CakePHP3を使ったテーブルの作成方法
MySQLに直接アクセスして、テーブルを作成することはできます。(以下テーブル作成クエリ)
CREATE TABLE `comment_table` (
`comment_table_id` int(11) unsigned NOT NULL AUTO_INCREMENT ,
`post_id` int(11) NOT NULL ,
`user_id` int(11) NOT NULL ,
`id` int(11) NOT NULL ,
`text` text NOT NULL ,
`img` text ,
`create_at` datetime NOT NULL,
PRIMARY KEY (`colony_comment_table_id`)
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf8;
しかし、CakePHP3のコード上で上と同じようなコードを再現することができません。
公式ドキュメントを読んで書いてみたのですが、やはり動作しないようです。
class MapsController extends AppController {
public function createColony(){
$createTable = $this->table('comment');
$createTable
->addPrimaryKey('comment_table_id','int',[
'limit'=>11,
'unsigned'=>true,
'NOT NULL'=>true,
'AUTO_INCREMENT'=>true
])
->addColumn('post_id','int',[
'limit'=>11,
'NOT NULL'=>true,
])
->addColumn('user_id','int',[
'limit'=>11,
'NOT NULL'=>true
])
->addColumn('id','int',[
'limit'=>11,
'NOT NULL'=>true
])
->addColumn('text','text',[
'NOT NULL'=>true
])
->addColumn('img','text')
->addColumn('create_at','datetime',[
'NOT NULL'
'limit'=>11,
'NOT NULL'=>true,
])
->addColumn('user_id','int',[
'limit'=>11,
'NOT NULL'=>true
])
->addColumn('colony_id','int',[
'limit'=>11,
'NOT NULL'=>true
])
->addColumn('text','text',[
'NOT NULL'=>true
])
->addColumn('img','text')
->addColumn('create_at','datetime',[
'NOT NULL'
])
->create();
}
}
なにかありましたら、随時補足いたします。
よろしくお願いします。