0
Я не могу вставить новую строку в таблицу и получаю ошибкуНевозможно вставить новую строку в CakePHP 3.0
2016-04-12 09:23:54 Error: [RuntimeException] Cannot insert row in "table_name" table, it has no primary key. Request URL:
Я использую ОРМ и мой код, указанный ниже
$entityTable = TableRegistry::get('TableName');
$entity = $entityTable->newEntity();
$entity->name = 'Test Name';
$entity->image = 'test.png';
$entity->type = 1;
if($entityTable->save($entity)) {
$this->Flash->success('Added successfully.');
} else {
$this->Flash->error('Error!.');
}
И мой стол
CREATE TABLE `table_name` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`image` text COLLATE utf8_unicode_ci NOT NULL,
`type` int(1) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;
добавить $ this-> primaryKey ('id'); in src >> Model >> Table >> TableNamesTable ... в вашем методе инициализации – prats1411
Теперь он работает отлично. Спасибо @ prats1411 –
aaah .. ответ уже опубликован, он был потерян на одной из вкладок .. рад, что он работает, пожалуйста, отметьте его как правильно :) спасибо! – prats1411