我正在尝试使用< code>Auth::user()-
我已经检查并包含了所需的文件,我正在从用户表中获取用户“id”
$user_id = Auth::user()->id;
echo $user_id; //this is returning right user "id"
我在调用变量并将其发布到控制器函数中的DB时遇到问题。任何帮助都可以。
public function store(Request $request)
{
$user_id = Auth::user()->id;
$this->validate($request, [
'token1' => 'required',
'token2' => 'required'
]);
$tokens = new Tokens([
'user_id' => $user_id,
'token1' => $request->get('token1'),
'token2' => $request->get('token2')
]);
$tokens->save();
return view('/home');
}
将User表中的User"id"
发布到Tokens表的"user_id"
中,以便我可以使用模型
出现此错误:
SQLSTATE[23000]:完整性约束冲突:19非空约束失败:令牌。user_id(SQL:插入“令牌”(“token1”、“token2”、“updated_at”、“created_at”)值(asddsadf、sdfasdf,2019-09-24 11:53:57、2019-9-24 11-53:57))
我的迁移是:
$table->bigIncrements('id');
$table->integer('user_id');
$table->string('token1');
$table->string('token2');
$table->timestamps();
您应该避免以这种方式填充user_id。
抛出错误是因为user_id
不是可填充属性。但是处理它的正确方法是使用关系。
因此,我假设令牌
具有belongsTo
,因为它的user_id外键(无论如何,它应该是
无符号整数
列),在您的模型中,您有如下内容:
public function user() {
return $this->belongsTo(User::class)
}
如果您查看官方留档,您会发现您应该以这种方式更改代码:
public function store(Request $request)
{
$this->validate($request, [
'token1' => 'required',
'token2' => 'required'
]);
$tokens = new Tokens([
// 'user_id' => $user_id, This is useless
'token1' => $request->get('token1'),
'token2' => $request->get('token2')
]);
// With this method you're going to set the user_id column
$token->user()->associate(auth()->user());
$tokens->save();
return view('/home');
}
问题内容: 在Laravel 4中我只使用了一个函数 从我的秃头模板(查看页面)调用控制器功能。现在我正在使用Laravel 5做一个新项目,我尝试了这种方法从刀片模板中调用控制器函数。但是它不起作用并显示了一些错误。是否有任何方法可以从Laravel 5的视图页面中调用控制器函数? 问题答案: 如果您有一个要在多个地方使用的功能,则应在helpers文件中对其进行定义,要在app / Http
所以我有一个Laravel控制器: 目前,我正在使用artisan(在引擎盖下运行PHP的内置开发Web服务器)运行应用程序: 我想将控制台消息记录到artisan进程的管道中。
问题内容: 在kohana框架中,我可以使用以下命令通过命令行调用控制器 是否可以通过CLI在Laravel 5中调用我想要的控制器?如果是,该怎么做? 问题答案: 到目前为止,还没有办法(不确定是否会发生)。但是,您可以创建自己的Artisan Command 来执行此操作。使用以下命令创建命令: 对于Laravel 5.3或更高版本,您需要使用: 这将在中生成命令类。该类的内容应如下所示: 然
问题内容: 我已经阅读了一段时间,发现可以使用以下命令调用控制器操作: 这是否意味着我应该将MicrosoftMvcAjax.js或MicrosoftAjax.js与Jquery库一起添加? 另外,第二个参数应在$ .ajax()函数中包含什么? 最后,在stackoverflow内或站点外部是否有其他链接可能对带ajax和jquery的asp.net mvc有帮助? 谢谢。 问题答案: 您可以从
问题内容: 我想在控制器中调用视图方法,但我不知道如何:)我寻求类似的示例,但没有找到它。我可以在这段代码中这样做吗?我是否必须重新构建?我使用javafx和fxml技术(来构建用户界面)。 我的视图文件(它具有gotoRegister()和gotoLogin()方法(我想调用它们)) 我的控制器(在这里我想调用gotoRegister()方法) 我的问题:我可以调用gotoRegister吗?或
我有看起来像这样的RestController: 我想知道如何将模拟对象传递给其他Controller,后者可以处理数据并将其保存到其他存储库。例如,它可以如下所示: 但我知道这种做法是不允许的。有什么办法可以做到这一点?