Laravel:检索用户输入的数据

时间:2018-10-12 07:32:06

标签: laravel laravel-5 laravel-5.5 laravel-5.6

我对Laravel还是很陌生,我对如何检索某些用户输入的数据感到困惑。

在我的项目中,有一个用户个人资料,应显示该用户提交的所有表单。

这是我的控制器功能:

public function clientAccount(BookingRequest $bookings)
{
    $client = Client::whereUserId(Auth::id())->with('user')->first();
    $bookings = BookingRequest::with(Auth::id())->with('client')->first(); //unsure about here//
    return view('client.account', compact('client','bookings'));
}

这是我的模特:

    public function client()
{
    return $this->belongsTo('App\Client', 'client_id', 'user_id');
}

我该如何解决?

编辑:

我尝试使用它,但是不知何故

$bookings = BookingRequest::where('client_id',Auth::id());

3 个答案:

答案 0 :(得分:2)

如果该关系需要一对多,则意味着一个客户有很多预订,那么在您的客户模型中,您应该具有以下功能:

ROLES

那您只需要找到客户,而您只需使用

lamer

它将列出该客户的所有预订。

答案 1 :(得分:0)

接着是nakov:

let item = FormTextField(nibName: "FormTextField", bundle: nil)

在您的用户个人资料视图中:

public function clientAccount()
{
  $client = Client::whereUserId(Auth::id())->with('user')->first();
  $bookings = $client->bookings();

  return view ('client.account')->with('bookings', $bookings)
}

答案 2 :(得分:0)

感谢您的所有答复!

我现在可以使用以下方法检索数据:

public function clientAccount()
{
    $client = Client::whereUserId(Auth::id())->with('user')->first();
    $bookings = $client->booking()->with('client')->get(); 
    return view('client.account', compact('client','bookings'));
}

在我的模型中,我改用了

public function booking()
{
    return $this->hasMany('App\BookingRequest', 'client_id', 'user_id');
}