$create->fkey("user_id");
そうでない場合、例えばfoo_idがuserテーブルのbarカラムを参照しているとなると、下記のように書かなくてはなりません。
$create->fkey("foo_id")->table("user")->column("bar");
また、モデル(ActiveRecordオブジェクト)をコンディションとして使用できます。
$aUser; // DBから取得済みのユーザ $arArticle = new Article(); $articles = $arArticle->select($aUser); // あるユーザが投稿した記事を取得規約通りでなくても、下記のように普通にセットすれば大丈夫です。
$articles = $arArticle->select("foo", $aUser->bar); // あるユーザが投稿した記事を取得
また、テーブルに対応するモデルのクラス名は、テーブル名から決定されます。モデル名はテーブル名の先頭文字を大文字にし、アンダーバーが含まれる場合はそれを削除し、それの直後の文字を大文字にしたものとなります。
app/models/User.php
class User extends Sabel_Db_Model
{
protected $tableName = "t_user";
}
ということで、規約に則っていなくてもほんの少しコーディングが多くなる(省略できなくなる)だけなので、
それほど問題はありません。