読者です 読者をやめる 読者になる 読者になる

Laravel5 Eloquentで、主キーを"id"カラムにしない設定

laravel php MySQL

2015年11月20日頃のメモ。

Laravel5 Eloquentで、主キーをidという名前のカラムにしない設定。

Zendで書かれたウェブアプリをLaravel5で書き換えられるか技術検証した。

room_idという文字列が主キーのテーブルが旧システムにあるので、
それをそのまま使いたい。

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'id' in 'where clause' (SQL: update `rooms` set `title` = 部屋名2, `updated_at` = 2015-11-24 03:24:10 where `id` is null)

laravel 4 - Change default primary key in Eloquent - Stack Overflow

Eloquent ORM - Laravel - The PHP Framework For Web Artisans

app/Models/Room.php

class Room extends Model {
    public $incrementing = false;
    protected $primaryKey = 'room_id';
}

のようにしたら、保存できた。