ErrorException:使用不确定的常量user_id-已假定 'user_id'
(在未来的PHP
版本中,这会引发错误)
<?php
use Illuminate\Database\Seeder;
class StocksTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('accounts')->insert([
'user_id' => user_id,
'product_name' => str_random(100),
'product_code' => str_random(10),
'details' => str_random(100),
'price' => str_random(10),
'cost' => str_random(10),
'quntity' => str_random(10),
]);
}
}
?>
答案 0 :(得分:1)
所以问题出在这行'user_id' => user_id,
上,
好像您插入随机数据。所以您还需要插入user_id(可能是随机的)
因此,user_id现在不是常量,因为您没有正确定义它。
因此它应该是$user_id
之类的变量,您可以使用mt_rand($min, $max)
。
对于随机整数。
但是要成为用户,您需要一个随机的user_id。否则,如果您已经有user_id
,则需要登录用户时将其存储在$user_id = Auth::id()
之类的变量中。
答案 1 :(得分:0)
在您的插入函数中,if ans1 in( 'yes' , ' yes'):
ans2 = input ("Which color do you prefer? <blue/pink>")
elif ans1 in( 'no' or ' no'):
print ("Well then, we will just stay in silence")
else:
print ("I will not talk to someone who doesn't care about me. \n You had one simple job, choose yes or no and even then, you failed.")
这行引起了问题。我想您想插入一个像1/2/3这样的id。所以要么使用像1/2/3这样的常量,要么使用一个变量'user_id' => user_id,
,您必须在变量$user_id
之前定义一个值。如果要插入字符串,请使用"user_id"
之类的。寻找""
。
答案 2 :(得分:0)
您必须用以下代码替换user_id
:
\App\User::inRandomOrder()->first()->id