I、次のデータベースの構造を有する:Laravel - 一方のコントローラで複数のモデル
Enquiries
をCUSTOMER_IDID
total_widgets
TOTAL_AMOUNTをあなたはセクションと、この意志にお客様の詳細情報を入力することができます
Customers
ID、あなたがお問い合わせを作成しているときに、フォームを使用して
FIRST_NAME、
last_nameの
firstOrCreate
を使用して店を開き、にリンクするにはid
が表示されます今Customer
からには、問題はこれがすべてのように、Customers
コントローラ内store
メソッド内で行われることである以下:
public function store(Request $request)
{
$rules = array(
"first_name" => "required",
"last_name" => "required",
"total_widgets" => "required"
);
// Handle validation
// Create customer
$customer = \App\Customers::firstOrCreate(['first_name' => $request-
>get('first_name')]);
$enquiry = new \App\Enquiries();
$enquiry->customer_id = $customer->id;
$enquiry->save();
}
このようにそれをやっての問題は、それが分離されていないということです顧客を作成するプロセスが変わった場合は、これを何度も変更する必要があります。 (毎回顧客が必要なセクションがあります)。
もっと良い方法がありますか?たとえば、別途顧客を作成してIDを$request
に渡す必要がありますか?