Tag: 雄辩

在Eloquent模型事件中获取以前的属性值

有没有办法在saving或updating事件中查看模型属性的旧/旧值? 例如。 是像以下可能的东西: User::updating(function($user) { if ($user->username != $user->old->username) doSomething(); });

Laravel雄辩 – 得到一排

这可能是一个简单的问题,但我无法弄清楚。 我正在试图通过电子邮件获取用户使用: $user = User::whereEmail($email)->get(); 但是这是返回$ users的数组(1维)。 所以如果我想得到名字,我必须做$user[0]['first_name'] 。 我尝试使用limit(1)或take(1) ,甚至使用->toArray()但没有区别。 我究竟做错了什么?

Laravel 4 – 从集合中获取数组属性

我有一个对象的集合。 假设对象是标签: $tags = Tag::all(); 我想为每个标签检索一个特定的属性,说它的名字。 当然可以 foreach ($tags as $tag) { $tag_names[] = $tag->name; } 但是,对于这个问题,还有更多的解决办法吗? 像$tags->name ?

更新时间戳(Laravel)

是否可以更新用户而不用触摸时间戳? 我不想完全禁用时间戳。 grtz

Laravel雄辩地更新,只要有改变

有没有什么办法可以在Laravel使用雄辩的模型更新logging,只要对logging进行了更改? 我不希望任何用户请求数据库一遍又一遍,只是按下button来保存更改。 我有一个javascriptfunction,启用和禁用保存button根据是否有什么改变了页面,但我想知道是否有可能确保在服务器端也做这种function。 我知道我可以通过检查logging是否有变化来自己完成(意思是:不要求框架的内部function),但在这样做之前,我想知道Laravel雄辩的模型是否已经处理所以我不需要重新发明轮子。 这是我用来更新logging的方式: $product = Product::find($data["id"]); $product->title = $data["title"]; $product->description = $data["description"]; $product->price = $data["price"]; //etc (string values were previously sanitized for xss attacks) $product->save();

在数据透视表中附加数据时,时间戳不更新

我使用以下附加语句在数据透视表中创build一行。 $music = Music::find(1); $music->users()->attach(1); 这在数据透视表中插入一行,但是,它不更新时间戳。 时间戳保持为0000-00-00 00:00:00 有什么办法来更新数据透视表中的时间戳。 ? 提前致谢,

如何为Laravel / Eloquent模型设置默认属性值?

如果我尝试声明一个属性,如下所示: public $quantity = 9; …它不起作用,因为它不被认为是“属性”,而只是模型类的一个属性。 不仅如此,而且我阻止访问实际存在的“数量”属性。 那我该怎么办?

为什么我在调用Eloquent模型中的方法时得到'非静态方法不应该静态调用?

我试图加载我的模型在我的控制器,并试图这样做: return Post::getAll(); 得到了错误Non-static method Post::getAll() should not be called statically, assuming $this from incompatible context 模型中的function如下所示: public function getAll() { return $posts = $this->all()->take(2)->get(); } 在控制器中加载模型然后返回其内容的正确方法是什么?

雄辩push()和save()的区别

我已经读了关于雄辩的文档,并且被push()部分所吸引。 它说, 有时候,你可能不仅要保存模型,还要保存所有的关系。 为此,您可以使用push方法: 挽救一个模型和关系 $user->push(); 在这里看到链接 不好意思,但是我保存()和push()之间的区别有点模糊。 我希望有人能为我解决这个问题。 谢谢。

Laravel雄辩 – distinct()和count()不能正常工作在一起

所以我试图得到一个查询不同的pid的数量,但返回的值是错误的。 这是我试图做的: $ad->getcodes()->groupby('pid')->distinct()->count() 什么返回值“2”,而它应该返回的值应该是“1”。 作为解决方法,我正在这样做: count($ad->getcodes()->groupby('pid')->distinct()->get()) 什么工作正常,并返回“1” count和distinct是不是有相同的查询规则? 我find了解决方法种“重”,我想使原来的查询工作:(