我有一个表格,您可以在其中提交“项目”。该字段之一是“创建者”,但是用户不会更新它,它会在那一刻获取经过身份验证的用户的名称,并将其插入到数据库中。我知道如何检索用户名,但是问题是,当我与另一个用户登录时,所有名称都会更改,因为我每次都存储该名称。这是我的项目负责人<?php namespace App\Http\Controllers;use App\Project;use App\Client;use Auth;use Illuminate\Http\Request;class ProjectController extends Controller{ /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function __construct() { $this->middleware('auth'); } public function index() { return view('projects.index', [ 'project' => Project::all() ]); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { if (Auth::user()->role != 1){ return redirect()->back(); }else{ return view('projects.create',[ 'project' => new Project, 'client' => new Client ]); } } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $r) { $validatedData = $r->validate([ 'proj_title' => 'required|max:100', 'client_id' => 'required', 'proj_desc' => 'required', ]); $currentUser = Auth::user()->name; $r['created_by'] = $currentUser; $project = Project::create($r->all()); return redirect('/projects')->with('store',''); } /** * Display the specified resource. * * @param \App\Project $project * @return \Illuminate\Http\Response */ public function show(Project $project) { // } /** * Show the form for editing the specified resource. * * @param \App\Project $project * @return \Illuminate\Http\Response */ public function edit(Project $project) { return view('projects.edit', compact('project')); }
1 回答
![?](http://img1.sycdn.imooc.com/533e4d660001312002000200-100-100.jpg)
白衣染霜花
TA贡献1796条经验 获得超10个赞
我认为您的问题是您正在使用:
{{ $project->Auth::user()->name }}
代替
{{ $project->created_by }}
- 1 回答
- 0 关注
- 158 浏览
添加回答
举报
0/150
提交
取消