在Laravel 5. x的早期版本中(我不确定它是什么时候改变的),我可以在任何雄辩模型类上调用静态方法create
来将记录插入数据库。
例如:
EloquentUser::create([
'name' => self::ADMIN_NAME,
'email' => self::ADMIN_EMAIL,
'password' => bcrypt(self::ADMIN_PASSWORD),
]);
这是在Model.php(vendor/laravel/framework/src/illighte/Database/Eloquent/Model.php
)中调用公共静态函数create
)。
public static function create(array $attributes = [])
{
$model = new static($attributes);
$model->save();
return $model;
}
在Laravel 5.5我仍然能够调用创建
但是Model.php是完全重新排列的,不包含此方法。更重要的是,在整个供应商/照明中搜索没有给我这样的东西。请解释一下,它是如何工作的,它在幕后称之为什么。
谢谢
Model使用QueryBuilder,在方法代码所在的地方使用EloquentBuilder。找到特定属性或方法的最佳方法是使用框架api文档。
Eloquent的\u call
和\u callStatic
将调用转发给Eloquent构建器实例。create
方法已从模型中移出并移到构建器中。
illumb\Database\elount\Model::\uu callStatic
-
问题内容: 和之间有什么区别? 例如 : 要么 问题答案: 尽管您 确实 希望遵守约定,但在功能上没有什么区别(字节码将 完全相同 ),请访问JLS-8.3.1。场修饰符: __ 这将是奇怪的,看.. 我也建议您访问checkstyle。 编辑: 从同一页面链接到该部分: http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls
嘿,伙计们,我是拉威尔的新朋友。我有这张桌子 我如何能够获取每个科目的is_correct列计数? 谢谢伙计们!
我想创建动态laravel类,以便动态调用查询。这是我的密码 但是当我试图调用这个类以便使用这个代码创建一个对象时 我得到这个错误 函数App\CRUD::uu construct()的参数太少,在第1630行的/var/www/html/logging/vendor/laravel/framework/src/illighte/Database/Eloquent/Model.php中传递了0,至
例如: 或
我正在努力使用laravel函数 我的代码在这里: 存储时:公司存储良好,但对于公司人员,它将存储到 Larave Documentations说: 有时,您可能不仅希望保存模型,还希望保存其所有关系。为此,您可以使用推送方法: 怎么了?
我想在PHPUnit测试中使用模拟对象(mockry)。模拟对象需要同时设置一些公共方法和一些公共属性。这门课是拉威尔雄辩的典范。我试过这个: ... 但是设置公共属性会返回以下错误: BadMethodCallException:此模拟对象上不存在方法Mockery_0_User::setAttribute() 在模拟简单类时不返回此错误,但在尝试模拟雄辩模型时返回此错误。我做错了什么?