belongsTo 后获取不到数据,不看教程实战后 就失败了!!!
项目需求
用户表
用户提交日志表
展示用户提交的日志列表
定义一个 日志模型
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Reportlog extends Model
{
//
protected $table = 'reportlog';
protected $fillable = [
'today_job', 'tomorrow_job', 'desc'
];
public function user(){
return $this->belongsTo(User::class);
}
}
自带的User模型 【没有改动】
日志数据库设计
Schema::create('reportlog', function (Blueprint $table) {
//
$table->bigIncrements('id');
$table->smallInteger('users_id');
$table->string('today_job','1024');
$table->string('tomorrow_job','1024');
$table->string('desc','1024');
$table->timestamps();
});
控制器代码
<?php
namespace App\Http\Controllers\Admin;
use App\Models\Reportlog;
use Carbon\Carbon;
use App\Http\Controllers\Controller;
class ReportlogController extends Controller
{
public function index(Reportlog $reportlogs){
//直接通过依赖注入的方式 把变量赋值到模板中
return view('admin.reportlog.index',compact('reportlogs'));
}
}
模板中页面展示
第一次测试数据是否循环出来了
//1.发现取到了内容 成功的循环出来
@foreach($reportlogs->all() as $reportlog)
测试内容
@endforeach
{{dd("die")}}
第二次测试实际表单中的数据
@foreach($reportlogs as $reportlog)
{{$reportlog->today_job}}
@endforeach
{{dd("die")}}
直接报错了
我还想 下面获取用户的姓名 估计直接死掉了
@foreach($reportlogs as $reportlog)
{{$reportlog->user-name}}
@endforeach
外键
users_id
改为user_id