ホームページ  >  記事  >  PHPフレームワーク  >  ThinkPHP5でのhas_oneとbelongs_toの違いの詳細な説明

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

藏色散人
藏色散人転載
2020-11-24 15:47:462942ブラウズ

次は、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 までご連絡ください。