我在用 Eloquent 模型设置我的 table 时遇到了一些问题。我以前做过很多次,但由于某种原因,这似乎不起作用。我在这里完全错过了什么吗?
模型:
class F5Host extends Eloquent {
protected $guarded = array();
protected $table = 'f5hosts';
public function Environments() {
return $this->belongsTo('Environment');
}
}
用法:
$host = new F5Host;
return $host->all();
错误:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'myapp.f5_hosts' doesn't exist (SQL: select * from `f5_hosts`)
更新:
我知道 Laravel 有一个功能,可以在使用模型确定数据库表名称时将 CamelCase 转换为 snake_case。但是 $table 变量应该覆盖它。我注意到当将类名更改为“F5host”时,覆盖突然开始工作。
最佳答案
创建环境类模型
例子
class Environment extends Eloquent {
protected $guarded = array();
protected $table = 'environment';
public function f5hosts() {
return $this->hasOne('F5Host');
}
}
更改关系方法和测试。
索里:我的英语不好。
关于php - 表格未设置在 eloquent 模型中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27611931/