相关疑难解决方法(0)

Laravel 4 Migrations抛出1072错误

我在一个新的Laravel 4项目中进行了几次迁移.一个是区域,另一个是区域.每个区域都有许多区域,区域属于区域.

我曾经多次使用过Laravel 4和迁移功能,但之前从未遇到过这个问题.当我运行php artisan migrate:install后,php artisan migrate我得到以下错误:

$ php artisan migrate
  [Exception]
  SQLSTATE[42000]: Syntax error or access violation: 1072 Key column 'region_
  id' doesn't exist in table (SQL: alter table `areas` add constraint areas_r
  egion_id_foreign foreign key (`region_id`) references `regions` (`id`)) (Bi
  ndings: array (
  ))
migrate [--bench[="..."]] [--database[="..."]] [--path[="..."]] [--package[="...
"]] [--pretend] [--seed]
Run Code Online (Sandbox Code Playgroud)

//区域迁移

class CreateRegionsTable extends Migration {

 /**
  * Run the migrations.
  *
  * @return void
  */
  public function up()
  {
    // …
Run Code Online (Sandbox Code Playgroud)

php mysql laravel laravel-4

5
推荐指数
1
解决办法
3675
查看次数

Laravel使用多个主键迁移创建表

我发出命令:

php artisan generate:scaffold order --fields="customer_id:integer(11), order_date:date, notes:text”
Run Code Online (Sandbox Code Playgroud)

当它进行迁移时,它以错误结束:

General error: 1 table "orders" has more than one primary key (SQL: create table "orders" ("id" integer not null primary key autoincrement, "customer_id" integer not null primary key autoincrement, "order_date" date not null, "notes" text not null))
Run Code Online (Sandbox Code Playgroud)

我试图customer_id在模式中引用一个Customer模型和相应的表.但是,它不应该是orders表的主键.

以下是up()阻止迁移运行的代码:

    Schema::create('orders', function(Blueprint $table)
    {
        $table->increments('id');
        $table->integer('customer_id', 11);
        $table->date('order_date');
        $table->text('notes');
        $table->timestamps();
    });
Run Code Online (Sandbox Code Playgroud)

我如何让它工作?

php laravel laravel-4

2
推荐指数
1
解决办法
3578
查看次数

标签 统计

laravel ×2

laravel-4 ×2

php ×2

mysql ×1