我有3个数据库表,我没有在其中任何一个上建立任何关系。然后我写了以下代码:publicfunctionstore($key){$user_key=md5(Input::get('email')."-".strtotime('now'));$user=newUser;$user->name=Input::get('name');$user->email=Input::get('email');$user->user_key=$user_key;$user->password=Hash::make(Input::get('password'));$user->apipass=md5(Inp
我有三张tablegarages,cars,securities.证券是保护一辆车安全的证券,您可以拥有多个安全性,但单一安全性只能保护一辆车的安全。车库是汽车所在的地方,证券也是。我想要列出所有证券并知道他所在的车库的名称。问题是securities没有包含车库id的列,只有他保持安全的汽车的id,但car有车库的id。LaravelEloquent有一个名为hasManyThrough的方法,但是securities有一个garage通过cars仅限。这是表格:车库table:-----------------------------------|garage_id|garage_
我最近开始使用Laravel和Eloquent,并且想知道缺少模型的查找或创建选项。你总是可以写,例如:$user=User::find($id);if(!$user){$user=newUser;}但是,难道就没有更好的寻找或创造的方式吗?这在示例中似乎微不足道,但对于更复杂的情况,获取现有记录并更新它或创建新记录会非常有帮助。 最佳答案 以下是原始接受的答案:Laravel-4在Laravel中已经有一个方法findOrFail可用,当使用这个方法时,它会在失败时抛出ModelNotFoundException但在你的情况下你可
我是laravel的新手,我正在尝试从表单输入更新记录。但是我看到要更新记录,首先你需要从数据库中获取记录。更新记录之类的事情是不可能的(设置了主键):$post=newPost();$post->id=3;//alreadyexistsindatabase.$post->title="Updatedtitle";$post->save(); 最佳答案 Post::where('id',3)->update(['title'=>'Updatedtitle']); 关于php-Larave
我将Lumen1.0用于API项目。我已经通过取消注释bootstrap/app.php文件中的以下行来启用Eloquent:$app->withEloquent();但是当我想创建我的第一个迁移模型时,它失败了:phpartisanmake:modelBook--migration错误信息:[InvalidArgumentException]Command"make:model"isnotdefined.Didyoumeanoneofthese?make:seedermake:migration关于Eloquent的Laravel文档(http://laravel.com/docs/
我有一个名为Eloquent的eloquent模型:Products::where("actice","=",true)->get()->toArray();现在我想向它添加连接语句,我已经定义了一个范围查询:publicfunctionscopeJoinWithTags($query){return$query->leftJoin("tags","tags.id","=","products.tag_id");}然后我们的主要查询变为:Products::where("actice","=",true)->joinWithTags->get()->toArray();我得到的是好的,
我是laravel和eloquent的新手,我不确定这是否可能。但我有2个具有一对多关系的表。一种是“位置”,一种是“用户”。一个位置可以有多个用户。因此,如果我想获取所有用户的所有位置,我会这样做:Location::with("users")->get();但我也想知道每个位置有多少用户,我试过这样做Location::with("users")->count("users")->get();但这没有用。 最佳答案 如果您使用急切加载,则不会出现提到的n+1问题。$locations=Location::with('users'
我尝试通过shop_products_options表中的pinned列对shop_products表中的产品进行排序:$products=Shop\Product::with(['options'=>function($query){$query->orderBy('pinned','desc');}])->paginate(5);我在Shop\Product模型中设置关系:publicfunctionoptions(){return$this->hasOne('Shop\Options');}但是产品没有排序。我得到一个仅适用于shop_products_options表的查询。S
Laravel5默认在app文件夹中有ORM模型。我想将它们移到应用程序/模型中。当我这样做时,这些类就再也找不到了。如何让Laravel从app/models中找到EloquentORM模型? 最佳答案 Laravel5.6+解决方案1。将文件移动到新目录假设您要将模型移动到app/Models2。更改模型的命名空间对于每个模型更改:namespaceApp;到namespaceApp\Models;3。更改其他文件中的引用检查这些文件并特别搜索app\Userapp/Http/Controllers/Auth/RegisterC
我们如何在Laravel4中创建一个新的Eloquent集合,而不使用查询生成器?有一个newCollection()方法可以被它覆盖,但它并没有真正起作用,因为它只在我们查询一组结果时使用。我正在考虑构建一个空的Collection,然后用Eloquent对象填充它。我不使用数组的原因是因为我喜欢EloquentCollections方法,例如contains。如果还有其他选择,我很想听听。 最佳答案 它不是真正的Eloquent,要将Eloquent模型添加到您的集合中,您有一些选择:在Laravel5中,您可以受益于助手$c=