ThinkPHP5でのhas_oneとbelongs_toの違いの詳細な説明

藏色散人
リリース: 2020-11-24 15:47:56
転載
2974 人が閲覧しました

次は、thinkphp フレームワーク チュートリアル コラムで、ThinkPHP5 における has_one とbelongs_to の違いを紹介します。困っている友人の役に立てば幸いです。

ThinkPHP5におけるhas_oneとbelongs_toの違い

関連するTp5開発ドキュメントと関連ブログを参照した後、主に使用しているモデルに応じてbelongsToとhasOneの違いをまとめました(これアソシエーションはモデル内に記述されます)、親アソシエーション オブジェクトは親アソシエーション モデルの下に記述されたアソシエーション モデルです (この記事は Products のモデル クラスにあります)。 2 つの関連付けが使用される場合は次のとおりです。


has_one (または has_many): 外部キーは子関連付けオブジェクト内にあります

例:

//父关联对象表
Products{
 id
 product_name
}
//子关联对象表
Image{
 image_id
 img_name
 product_id    //foreign key
}
ログイン後にコピー
は TP5 では次のように記述されます:
//hasOne方法的参数包括:
//hasOne('关联模型名','外键名','主键名',['模型别名定义'],'join类型');
//默认的join类型为INNER
//写在Products的model类中
public function Img(){
  $this->hasOne('Image','product_id','id');
}
ログイン後にコピー

belongs_to: 外部キーは親オブジェクト内にあります

//父关联对象表:
Product{
 product_id
 img_id    //foreignkey
 product_name
}
//子关联对象表
Image{
 id      
 img_name
}
ログイン後にコピー
は TP5 では次のように記述されます:
//belongsTo方法的参数包括:
//belongsTo(‘关联模型名’,‘外键名’,‘关联表主键名’,[‘模型别名定义’],‘join类型’);
//默认的join类型为INNER
//写在Products的model类中
public function Img(){
$this->belongsTo('Image','img_id','id');
}
ログイン後にコピー

以上がThinkPHP5でのhas_oneとbelongs_toの違いの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート