![](/img/trans.png)
[英]How to create One to many relationship between two table in php Laravel?
[英]How to create One to Many Relationship in php
我以前在laravel工作過。 所以最近我搬到了核心php,所以我正在嘗試一對多的關系。但是它總是返回單獨的記錄。 我有下表
作者
id | username | created_by | updated_by
圖書
id | author_id | book_name | book_image |
詢問
select * from authors left join books on author.id=books.author_id
我正在尋找這樣的結果
Array
(
[0] => Array
(
[id] => 1
[name] => Norm
[books] => Array
(
[0] =>Array
(
[id] => 4
[book_name] => great wall
[created_at] => 2015-09-11 04:45:07
[updated_at] => 2015-09-11 04:45:07
)
[1] =>Array
(
[id] => 6
[book_name] =>new book
[created_at] => 2015-09-11 04:45:07
[updated_at] => 2015-09-11 04:45:07
)
)
)
[1] => Array
(
[id] => 2
[name] => Norm
[books] => Array
(
[0] =>Array
(
[id] => 2
[book_name] => amazing star
[created_at] => 2015-09-11 04:45:07
[updated_at] => 2015-09-11 04:45:07
)
[1] =>Array
(
[id] => 3
[book_name] =>way of journy
[created_at] => 2015-09-11 04:45:07
[updated_at] => 2015-09-11 04:45:07
)
)
)
but in core php i am getting ouput
Array
(
[0] => Array
(
[id] => 1
[username] => david
[created_by] =>
[user_id] => 1
[books] => book1
)
[1] => Array
(
[id] => 2
[username] => david
[created_by] =>
[user_id] => 1
[books] => book2
)
[2] => Array
(
[id] => 3
[username] => david
[created_by] =>
[user_id] => 1
[books] => book3
)
[3] => Array
(
[id] => 5
[username] => miller
[created_by] =>
[user_id] => 2
[books] => new1
)
[4] => Array
(
[id] => 6
[username] => miller
[created_by] =>
[user_id] => 2
[books] => new2
)
)
所以我想用很多本書來顯示作者的名字。有誰能幫助我,我怎么能做到這一點
class Author extends Model
{
/**
* Get the books for the author.
*/
public function books()
{
return $this->hasMany('App\Book');
}
}
...
class Book extends Model
{
/**
* Get the atuhor that owns the book.
*/
public function post()
{
return $this->belongsTo('App\Author');
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.