CodeIgniter の Datamapper ORM から来て、私はまだ Laravel の Eloquent ORM について理解を深めようとしています。
ACCOUNT と USER テーブル (簡略化) があるという事実を考えると:
ACCOUNT
- id
- name
USER
- id
- account_id
- username
1 つのアカウントには多くのユーザーがいます。1 ユーザーは 1 アカウントに属します。そのため、1 対多の関係を扱っています。すべてがモデルですでに設定されています。
CodeIgniter の Datamapper では、次のようにして任意の ID からユーザーを取得し、同時にそのユーザーが現在のアカウントに関連しているかどうかを確認します。
$u = new User();
$u->where('username', $username);
$u->where_related_account('id', $account_id);
$u->get();
if ( ! $u->exists()) exit; // or do something...
// otherwise continue to use the "$u" user object
この構文は非常に論理的で理解しやすいものです。Eloquent では、同様の簡単な構文で同じことを達成するのに苦労しています。誰か提案はありますか?