2017-02-06 20 views
0

Laravelを使用して2つのテーブルを結合する方法についていくつかのフィードバックがあります。私はドキュメントを読んだが、まだ私はちょっと混乱している。そして、私はまだ問題をどのように扱うか考えています。私は子供の情報とワクチンのために2つのテーブルを持っていますが、私はワクチンがたくさんあり、新しい子供はシステムに。私は管理者が各子供が持っているワクチンを選択するためのいくつかのタイプのチェックボックスを作ろうと計画していますが、それで日付があるので、何が最善のアプローチになるのか分かりません。 私の質問の1つは、ユーザーが子供の情報を記入しているときに、どのようにしてワクチンテーブルからデータを取得するのですか?または、あなたはより良い服用をしていますか?私はすでに子供たちのテーブルを稼働させていますが、今はワクチンを追加する必要があります。 私はあなたの助けを喜んでお待ちしております。私はまた、2つのテーブルの写真を残します。私の理解へ2つのテーブルに結合するLaravel

enter image description here

+1

を単に好奇心から、なぜあなたは '外部キーとして主キーと' id'としてidkid'を持っているのですか?また、どのようにプレーンSQLクエリを使用してこれをクエリするか知っていますか?もしそうなら、生のクエリが何であるかを示すことができますか? –

+0

ああ、それについて説明してくれないのは残念です。 idはusersテーブルからのid、idguardianはguardiansテーブルからのユニークidkid –

+0

を持つキッズテーブルの外部キーであり、私は依然としてクエリとテーブルを結合する方法について混乱しています。私はまだ2番目のテーブル(ワクチン)を扱う方法を知らないので、日付を取り除き、余分なテーブルでワクチンのタイプを処理するか、何ができるのかわからない –

答えて

0

あなたはkidsvaccineskids_vaccinesを言うことができます間の相互作用を管理します別のテーブルを維持する必要があります。

これは、1つのまたは多くのワクチンを受けるすべての子供が彼らのレコードは、時間のタイムスタンプを追加しているでしょうワクチン(複数可)

例を受け取った、ということを意味は次のようになりますとKidsVaccineモデルを持つ

public function kid() 
{ 
    return $this->belongsTo(Kid::class, 'idkid'); 
} 

public function vaccine() 
{ 
    return $this->belongsTo(Vaccine::class, 'idvaccine'); 
} 

ようKidVaccineとの関係そして、あなたのKidモデルとVaccineモデルの両方がに耐えることができますKidsVaccine

との関係は、これはでは、両方の外部キー(ワクチンを子供に適用されたときに知っているように、あなたのタイムスタンプは、ここにあるofcourseの)としてidkididvacccineを管理することになるkids_vaccinesテーブルを言うことができます、ということを意味します。

この結果、vaccinesテーブルから回収可能なワクチンを持つ子供を簡単に作成できます。

不明な点がある場合は、それを指摘できます。

・ホープこのことができます:)

+0

ありがとう!私は多対多の関係とピボットテーブルをやって終わった:) –

関連する問題