Laravel Migration返回"表定义不正确;只能有一个自动列,必须将其定义为键#34;为什么? Link of Code
答案 0 :(得分:1)
该死的,考虑一些atomizing。
创建迁移时integer
值的第二个参数不是字段的长度,而是它应该或不应该是自动增量。
这就是你的问题所在。
例如$table->integer('celular',15)->nullable();
。 Laravel会假设你想要自动增量,因为15
是一个真正的值,因为mysql doesn't allow more than one column to be autoincrement你自己就错了。
答案 1 :(得分:0)
检查你的表结构,你最想建立一个有两个自动增量列的表,这是不可能的
答案 2 :(得分:0)
$table->increments('id')->primary()
代替$table->increments('id')
应该有效。由于错误消息确实说您没有将列定义为主键