草庐IT

关系图

全部标签

php - Laravel- 5.5 App\Comment::user 必须返回一个关系实例。

我想显示产品评论。但是当我这样做时,它给了我上述错误。我该如何解决?我在product-comments和user-comments之间使用一对多关系产品型号;publicfunctioncomments(){return$this->hasMany('App\Comment','product_id','id');}用户模型;publicfunctioncomments(){return$this->hasMany('App\Comment','user_id','id');}评论模型;publicfunctionuser(){$this->belongsTo('App\User')

php - 从具有关系的数据库中检索数据

我正在尝试从我的数据库中检索一些数据,我已经在数据库中建立了正确的关系,但我就是不知道要使用哪个查询。这是不同关系的直观表示:我想要的是从clanwars中获取所有数据以及来自申请这些war的用户的所有用户名。你们能帮帮我吗?提前致谢! 最佳答案 怎么样:selectw.*,m.usernamefromclanwarswjoinapplicationsaona.warid=w.idjoinmembersmonm.id=a.playerid 关于php-从具有关系的数据库中检索数据,我们在

php - Laravel 5 预加载 belongsTo 关系

我在使用Laravel5和Eloquent时遇到问题。我有3个模型,分别称为Ad、AdEngine和Engine:classAd{...publicfunctionengineAd(){return$this->belongsTo('App\Models\EngineAd','engine_ad_id','id');}...}classEngineAd{...publicfunctionengine(){return$this->belongsTo('App\Models\Engine','engine_id','id');}...}classEngine{...}在我的广告类中,我有

php - Laravel 动态关系 - 在急切加载时访问模型属性

我在我的Laravel模型上有一个Eloquent关系,它是动态的——也就是说,特定数据库字段的值决定了哪个模型将被加载。当我第一次实例化模型实例然后引用该关系时,我能够很好地加载该关系,但是当我急切地加载该关系时它不起作用。具体来说,我有一个Product模型。该产品可能是也可能不是另一个产品的父产品。如果产品的parent_id设置为0,则该产品被视为父部件(无论它是否有子部件)。如果parent_id设置为不同产品的ID,则该产品是子产品。我需要能够访问Product::with('parent')并且知道parent关系将返回either本身(是的,重复数据)或不同的产品(如果

php - 在 Laravel 中创建和返回具有关系的模型

我有几个端点用于获取/发布对该应用程序中笔记的评论。GET端点使用Eloquent的with方法将评论的作者数据包含在响应中:publicfunctiongetComments(Note$note){return$note->comments()->with(['author'])->get();}如何在创建/返回Eloquent模型时也包含作者数据?这是我目前的方法:publicfunctionpostComment(Note$note,Request$request){$user=$this->appUserRepo->getFromRequest($request);$text=

php - 我如何向 Laravel 的 auth()->user() 对象 + 它的关系添加更多数据?

我的user模型有一个外键引用,叫做person_id,它指的是我的people表中的一个person.当我死亡并转储经过身份验证的用户(dd(auth()->user()))我得到:{"id":1,"email":"foo@bar.baz","is_enabled":1,"person_id":3,"created_at":"2017-12-1210:04:55","updated_at":"2017-12-1210:04:55","deleted_at":null}我可以通过调用auth()->user()->person来访问person但这是一个原始模型。Person的Pres

php - cakephp habtm 关系(保存数据)

与HABTM相关的问题已经在stackoverflow上发布了一些不错的数字,但我仍在寻找解决我的问题的方法。我正在创建一个允许基于特定子类别创建主题的应用程序。添加主题时,系统会要求用户提供标签(在同一表单上)。现在,当用户通过单击“添加”按钮完成向主题添加标签时,主题已成功添加,但标签没有。我已将主题和标签的连接表创建为tbl_tags_topics.(在cakephp的约定中定义)并在主题和标签模型中正确定义了'hasAndBelongsToMany'数组。我现在缺少哪些步骤?我还有一个与此相关的问题,但当我能够将与主题相关的标签成功发送到数据库时,我会发布它。(功能类似于sta

php - Sonata Admin Bundle 不适用于多对多实体关系

我目前正在使用Symfony2.1.0-DEV和Doctrine2.2.x使用SonataAdminBundle,我遇到了Many-To问题-许多实体协会:classMyProductextendsProduct{/***@ORM\ManyToMany(targetEntity="Price")*/private$prices;publicfunction__construct(){$this->prices=new\Doctrine\Common\Collections\ArrayCollection()}publicfunctiongetPrices(){return$this->

php - Laravel 4::返回模型及其关系

我想返回模型及其部分关系例子::用户模型publicfunctioncomments(){return$this->hasMany('comments');}评论模型publicfunctionuser(){return$this->belongsTo('user');}我可以返回所有评论以及与评论关联的用户名吗?想要的效果是$comment=Comments::find($id);$comment->user;return$comment;这将返回一条评论和关联的用户完整模型。我只需要用户名。如果我调用Comments::all()这不起作用提前谢谢你。

php - Laravel 多对多只从关系中获取一个值

Expense和Tag之间存在多对多关系。现在我只想从所有与Expense相关的标签中获取name。那么,假设我有一个Expense:$expense=Expense::first();现在我可以轻松抓取所有标签:$tags=$expense->tags;这会给我一个标签集合。理想情况下,我想要一个标签名称数组:array:5[▼0=>"tag1"1=>"tag2"2=>"tag3"3=>"tag4"4=>"tag5"]现在我可以通过这样做来实现:$tags=$expense->tags;$new_tags=[];foreach($tagsas$tag){$new_tags[]=$ta