我正在开发一个应用程序,其中我在MySQL中有一个名为“tags”的列,此列的数据用逗号分隔,就像1,2,3
我有一个表单,我将从中传递数据说2,这个数据应该与标签列中的数据比较说1,2,3
我写过像这样的查询
$linkdetails->where('tags','LIKE',Input::get('tags'))->get();
我知道我需要在这里使用爆炸,但我对这种Laravel语法很困惑。
答案 0 :(得分:0)
因为你很好地问我这是怎么做的:
tags
和name
的表id
以及包含link_tag
和tag_id
<的数据透视表link_id
/ LI>
Tag
Link
模型的东西: Link
与Tag
class Link extends Eloquent {
public function tags(){
return $this->belongsToMany('Tag');
}
}
class Tag extends Eloquent {
public function links(){
return $this->belongsToMany('Link');
}
}
($tags
是链接应匹配的标记列表)
$tags = array('foo', 'bar');
$linkdetails->whereHas('tags', function($q) use ($tags){
$q->whereIn('name', $tags);
})->get();
如果您有可以标记的不同实体,您还应该查看polymorphic relations