2016-07-28 60 views
0

我花了两天时间处理这么简单而又小巧的事情。我有一个名为User的模型,它有一个用户注释关系。Laravel 5与表格绑定有一种关系

在用户模型的侧我有一个属于关联关系定义,然后将用户的模型定义关系的hasOne侧。

我使用结合到$user模型的形式同时在UserNote模型有其表映射到与USER_ID用户。

我一直在试图得到下面显示的东西;

{{ Form::textarea($user->notes, null , [ 'class' => 'form-control', 'placeholder' => 'Note Content']) }} 

有人在那里帮我算出这个?B的所有我需要的是能够添加注释,并且如果用户没有注意到然而,因为如果我这样做,如下图所示我不应该收到错误我收到一个错误:

{{ Form::textarea('UserNote[content]',... }} 

您的意见,将不胜感激。

class User{ 
... 
public function note() 
{ 
    return $this->belongsTo(UserNote::class); 
    } 
} 

class UserNote{ 
protected $fillable = ['content', 'user_id']; 
... 
public function user() 
{ 
    return $this->hasOne(User::class, 'user_id'); 
    } 
} 

当然在$fillable user_ID的不应该出现在首位,因为这只意味着从前我想要的一切,从控制器自动完成的,形成的结合,我可以手动更新此表。

+0

你得到什么错误? – jaysingkar

+0

更新您的问题与您的模型请 – Vuldo

+0

@Vuldo我这样做,先生在此先感谢。 – Maximum86

回答

0

首先,你的关系错了。

  • 用户hasOne UserNote
  • UserNote属于关联用户

所以,你已经掉那些相应型号的关系。
其次,在窗体的文本区域具有参数列表,如:

public function textarea($name, $value = null, $options = []){} 

所以,第一个参数是很明显的FORM_NAME。第二个参数将是输入的。你做错了。
在你的情况,这应该是(我认为)

{{ Form::textarea('user_note', $user->note , [ 'id' => 'user_note', 'class' => 'form-control', 'placeholder' => 'Note Content']) }} 

编辑
酒店是方法名,你以前写像笔记,该方法不存在。 编辑完
希望这有助于。快乐的编码!

+0

谢谢,先生,@ ssl-anik,我一定会试一试并回复你。 – Maximum86

+0

如果这有帮助,请upvote答案。谢谢。 –

+0

是的,我会毫不犹豫地这样做。 – Maximum86