php 类名称必须是一个有效的对象或字符串Laravel 5.7

kuhbmx9i  于 2023-10-15  发布在  PHP
关注(0)|答案(3)|浏览(135)

我想保存一个新记录,但是Laravel给了我这个错误**类名必须是could对象或字符串。**我的代码;

public function store(Request $request)
{
    $question = new Question;
    $question->question = $request->question;
    $question->question_type_id = $request->question_type;
    $question->user_id = $request->Auth::id();
    $question->save();
}

注意:我的PHP版本是最新的.即7.1.9

jmo0nnb3

jmo0nnb31#

我假设你创建了一个输入字段,它的名称是用户的id,并且你试图使用以下命令访问它:

$request->Auth::id()

对于用户id为1的用户,我假设您要求传递请求项$request->1
这将不起作用,因为Auth::id()是作为文字传递的。返回请求对象,它正在抱怨说“嘿,我不能接受一个类作为变量名,请停止!”“
如果这就是你要做的,并且Auth::id()可以工作(我从来没有使用过,我通常使用Auth::user()->id),那么你必须像这样在括号内传递函数:

$request->(Auth::id())
35g0bw71

35g0bw712#

动态对象键的正确语法是:

$question->user_id = $request->{Auth::id()};

或者如果你只是想要auth ID,那么它是:

$question->user_id = Auth::id();
ecfdbz9o

ecfdbz9o3#

我已经解决了这个问题,感谢aynber整理我的问题。我已经改变

$question->user_id = $request->Auth::id();

$question->user_id = Auth::id();

相关问题