我的代码:
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTasksTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('tasks', function (Blueprint $table) {
$table->increments('id');
$table->integar('user_id')->index();
$table->string('name');
$table->string('food');
$table->string('quantity');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('tasks');
}
}
答案 0 :(得分:14)
您错误地写了integer
拼写,请写integer
而不是integar
这是我的工作示例代码,请参阅整数行,希望对您有帮助
public function up()
{
Schema::create('app_type_users', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned()->index();
$table->integer('app_type_id')->unsigned()->index();
$table->string('status',1);
$table->timestamps();
});
}
答案 1 :(得分:1)
如果您看到:" 调用未定义的方法"错误通常意味着你拼错了一些东西。我有类似的东西让我发疯,我在链接方法时错过了一个箭头:
答案 2 :(得分:0)
转到项目文件夹,打开app / Providers / AppServiceProvider.php,添加以下代码,然后在控制台中运行php artisan migration
namespace App\Providers;
使用Illuminate \ Support \ ServiceProvider; 使用Illuminate \ Support \ Facades \ Schema;
AppServiceProvider类扩展了ServiceProvider { / ** *引导所有应用程序服务。 * * @返回无效 * / 公共功能boot() { 架构:: defaultStringLength(191); }
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
}
即使在更改代码内容后仍无法迁移数据库,也可以尝试在此函数 defaultStringLength(191)上更改Number。 更改为99,199或191;