laravel - 如何获得由其他用户撰写的用户提交的推荐信
问题描述
我无法让其他用户提交的所有推荐书显示在相关用户(正在审核的用户)的用户个人资料上。
有两张桌子。首先是带有, , ,和的users
表格。我有一张表,其中存储了带有、和的推荐信。(获取提交表单的 id并获取接收推荐的人的 id)。id
name
email
photo
phone
title
avis
id
profile_id
user_id
comment
user_id
User
profile_id
id
User
我尝试像下面那样做,但真的不知道它是否正确。而且我不确定我的关系是否正确。我对 Laravel 有点陌生。但无论如何,这是我到目前为止所尝试的:
这是User
模型:
public function avis()
{
return $this->hasMany('App\Avis', 'profile_id', 'user_id');
}
这是我的Avis
模型:
protected $fillable = ['comment','profile_id'];
public function user()
{
return $this->belongsTo('App\User');
}
这是我在显示个人资料和推荐列表的控制器中所做的:
public function Details($id)
{
$detail = User::with(['area.town', 'services'])->find($id);
$avis = User::whereHas('avis', function ($query) use ($id) {
$query->where('profile_id', '=', $id);
})
->limit(3)
->get();
//dd($avis);
return view('Users', compact('avis', 'detail'));
}
这是我用来写推荐信的表格:
<div id="avisForm">
<p class="feedback_message">We are here to make sure you are sastified and your transactions are safe. We do appreciate and will respond quickly to any feedback from you.</p>
{!! Form::open(['route' => 'avis.store']) !!}
<input type="hidden" name="profile_id" value="{{ $detail>id }}">
{!! Form::textarea('comment', null, ['placeholder' => 'Message', 'required' => 'required']) !!}
{!! Form::submit('Envoyez', ['class' => 'formBtn','style' => 'margin-top:10px']) !!}
{!! Form::close() !!}
</div>
这是用于存储推荐的控制器方法:
public function store(AvisCreateRequest $request)
{
$avis = new Avis;
$id = Auth::user()->id;
$avis->comment = $request->comment;
$avis->profile_id = $request->profile_id;
$avis->user_id = $id;
//dd($avis);
$avis->save();
return back()->with('success_message', 'Votre Avis a ete envoyez avec succes!');
}
有人可以向我指出我做错了什么吗?
解决方案
public function avis()
{
return $this->hasMany('App\Avis', 'profile_id', 'id');
}
嘿伙计,一定是这样的,'profile_id'和'user_id'都是外键。'id' 是你在 users 表中的本地键,如果你调用 avis() 它将匹配users 表的id和avis 表profile_id
推荐阅读
- javascript - 如果 url 的参数发生变化,则重新加载/重新渲染页面 - 反应
- python - 乌龟的python子类
- java - 我需要安装任何 spring 插件、IDE 或工具套件吗?
- python - python PIL draw.text
- java - 如何获取Stream中元素的索引?
- c - 我如何计算在 C 中不使用 /10 的数字中的位数?
- php - 从 JSON 到 php 数组的 Laravel mutator 以显示在数据表中
- java - 从存储中选择字幕文件并加载到 ExoPlayer
- android - kotlin 中的菜鸟。我需要有关 Imageview 的帮助
- angular - 如何在Angular ngrx 8商店中调用API之前检查状态加载和加载的值是否为假?