我和Laravel有点问题 . 我对它很新,我正在尝试为我的一些内容创建一个multilang模型 .
这是我的配置:
数据库:
表appartements:1 id int(10)2 address varchar(255)
3邮政编码int(11)4 city varchar(255)
5国家varchar(255)
6 created_at timestamp 7 updated_at timestamp
表appartement_langs 1 id int(10)
2 language_id int(11)3 appartement_id int(11)4 title varchar(255)
5字幕varchar(255)6描述文本
7 created_at timestamp 8 updated_at timestamp
表格语言1 id int(10)
2 locale varchar(255)
3 created_at时间戳
4 updated_at时间戳
所以基本上我有language_id和appartement_id .
在我的Appartement模型中,我有以下内容:
<?php
class Appartement extends Eloquent {
protected $guarded = array();
public static $rules = array();
public function gallery()
{
return $this->hasMany('Gallery');
}
public function languages()
{
return $this->hasMany('AppartementLang', 'language_id');
}
public function lang()
{
return $this->hasOne('AppartementLang');
}
}
当我尝试获得字段$ appartement-> lang() - > title时我什么都没得到 .
你能给我一个提示吗?因为我真的不知道如何处理这个:) .
非常感谢 .
1 回答
当你使用
lang()
时,你实际上是返回部分构建的查询(所以你可以添加其他条件,等等 . )如果要检索语言模型,只需使用
lang
.所以:
如果你
var_dump()
你会亲眼看到 .在Laravel documentation中,您将看到他们的关系示例调用: