我使用Laravel 5.2并希望更改默认用户表的列。我写 在CreateUsersTable
中 public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
Schema::table('users', function ($table) {
$table->string('role');
$table->string('info');
$table->string('age');
$table->string('hobies');
$table->string('job');
});
}
我在git bash中运行这些命令但是用户表没有改变。
php artisan migrate:refresh
php artisan migrate
我该如何解决?
答案 0 :(得分:1)
运行composer dumpauto -o
命令后,您应该运行php artisan migrate
来注册新的迁移,以便可以回滚它们。
试试吧。如果它不起作用,请尝试删除所有表,包括migrations
并运行此命令:
php artisan migrate:install
答案 1 :(得分:0)
您只需要更改Schema::create
内的内容并删除Schema::table
然后,您需要实施巡视down()
mehod并添加Schema::drop('users');
以便在您运行migrate:refresh
时放弃您的表格。
您可以阅读数据库迁移'在laravel文档中了解更多细节。
答案 2 :(得分:0)
创建新的迁移文件并执行类似的操作
public function up() {
DB::statement('ALTER TABLE user ADD some_field INT');// your query here
}
php artisan migrate
答案 3 :(得分:-1)
删除第一条语句,仅保留最后一条。 然后运行php artisan migrate:refresh