以下运行成功后php artisan migrate:install
我尝试运行下面的代码来生成一个用户表 php artisan migrate从我的迁移中,我得到以下
error [ErrorException]试图获取非对象的属性
迁移看起来像这样:
public function up()
{
Schema::table('user', function(Blueprint $table)
{
$table->increments('id');
$table->string('username', 128)->nullable()->default(null);
$table->string('password')->nullable()->default(null);
$table->string('email')->nullable()->default(null);
$table->timestamps()->nullable->default(null);
});
}
查看上面的代码,错误似乎在这里:
$table->timestamps()->nullable->default(null);
应该是:
$table->timestamps();
方法timestamps
不能与nullable
属性或nullable()
方法连锁。由$table->timestamps()
创建的数据库字段是created_at
和updated_at
,默认情况下它们的值是时间戳0000-00-00 00:00:00
,我认为你不能改变它。
另外,如果您在其他字段中设置了nullable()
,则不需要在此之后添加default(null)
,因为这些字段将以NULL
作为默认值。
UPDATE:如果迁移是为了创建一个新表,您还需要用Schema::create
替换Schema::table
。