テーブルの主キーが列でない場合、fuelphpでORMを使用してレコードを見つける方法はありidますか?
たとえば、listing_idは私の主キーです。そして、私は望ましい結果を得ることができませんでした:
$listing_id = Input::get('listing_id');
$entry = Model_ExampleData::find($listing_id);
テーブルの主キーが列でない場合、fuelphpでORMを使用してレコードを見つける方法はありidますか?
たとえば、listing_idは私の主キーです。そして、私は望ましい結果を得ることができませんでした:
$listing_id = Input::get('listing_id');
$entry = Model_ExampleData::find($listing_id);
保護された静的 $_primary_key
デフォルトでは、これは array('id') に設定されています。別の列名または複数の主キーを使用する場合は、このプロパティを設定する必要があります。
class Model_Article extends Orm\Model
{
protected static $_primary_key = array('aid');
}
主キーは、一意で不変の真の主キーでなければなりません。PK を変更できないため、他の目的 (1 対 1 の関係での外部キーなど) にも使用しないでください。Orm はこれをチェックしません。一見、機能しているように見えますが、問題が発生します。PK が auto_increment である必要はありませんが (推奨されます)、自分で PK を指定できますが、初回のみです。設定したら設定完了です。