Zi 字媒體
2017-07-25T20:27:27+00:00
Eloquent has() and doesnthave()
PHP:7.2
Laravel:5.8
當我們利用 Eloquent 在取得資訊時,還會搭配些條件判斷和 Relationship 輔助,而 has() 和 doesnthave() 就是針對 Relationship 設計的條件方法。
Basic Usage
以下就用 Album 和 Song 來舉例。
Album Model
class Album extends Model
{
protected $primaryKey = 'album_id';
protected $table = 'album';
public $timestamps = false;
public function songs()
{
return $this->hasMany(Song::class, 'album_id');
}
}
Album 可以透過關聯取得 Song 資料,這時候如果要加入 有沒有 Song 資料 的條件來判斷是否取出 Album 資料的話,就可以使用 has() 和 doesnthave() 這兩個方法。
範例
// 當 song table 有該 album 資料時,取出 album
$albumObjs = Album::has('songs')->get();
// 當 song table 沒有該 album 資料時,取出 album
$albumObjs = Album::doesnthave('songs')->whereIn('album_id', [2, 30497178])->get();
Categories: Laravel
Tags: LaravelPHP
分類
Android
AngularJS
API Blueprint
Chrome
Database
MySQL
DataStructure
Editor
Vim
Firefox
Git
Hadoop
Language
Go
Java
JavaScript
jQuery
jQueryChart
Node.js
Vue
PHP
Laravel
ZendFramework
Python
Mac
Network
Cisco
DLink
Juniper
Oauth
Server
Apache
Share
Unix
FreeBSD
Linux
WebDesign
Bootstrap
CSS
HTML
Wordpress
Search
搜尋:
寫了
5860316篇文章,獲得
23313次喜歡