4

これらのスキーマを持つテーブルが必要です:

users(id, name, email) 
user_details (id, user_id, physical_address, otherinfo)

示されているように、最初のテーブルで set Relationship を使用しようとするときに、grocercrud を使用して両方のテーブルのすべてのコンテンツを 1 つのグリッドに表示したいと思います。 注: ビューのレンダリングを行う部分を削減しました。

$crud = new grocery_CRUD();
$crud->set_table('users');
$crud->set_relation('id', 'user_details', '{physical_address} + {otherinfo}');

id フィールドの値と参照されるテーブルがグリッドに表示されないため、主キーを使用すると機能しないようです。

そこで、次のように 2 番目のテーブルの内容から始めることにしました。

$crud = new grocery_CRUD();
$crud->set_table('user_details');
$crud->set_relation('user_id', 'users', '{name} + {email}');

これは機能しますが、問題は値がグリッドの 1 つの列に表示されることです。それらを異なる列に分けて、別々の入力フィールドで編集できるようにする方法を知りたいです。

4

1 に答える 1

0

私のやり方はちょっとばかげて
います。本当にフィールドを分離する必要がある場合は、callback_columnを使用してから、アクティブなレコードを使用して を使用して値を返し、$row->user_id各レコードをコールバックします

ちょうど同じように:
return $this->some_model->get_name($row->user_id);名前フィールド

return $this->some_model->get_name($row->user_id);電子メール フィールド

しかし、いくつかのダミーレコードでテストしたところ、ソートできませんでした (誰かができるかどうかはわかりません)。

于 2013-07-02T05:36:15.673 に答える