2
votes

Sorry ... my english is bad, so my question could be absolutely not clear.

I have this tables: Groups Users Reports

Relations: Groups 1 -> N Users 1 -> N Reports

In the admin view of report I'm using a CGridView.

i'm actually able to show user name. ... but what about show group.name ?

How to setup relations ? How to setup CDbCriteria ?

I already have this relation In Report model:

'user' => array(self::BELONGS_TO, 'Users', 'userId'),

And this in User model

'group' => array(self::BELONGS_TO, 'Gruppi', 'groupId'),

In Report Model I have this:

$criteria=new CDbCriteria;
$criteria->with = array ('user');
2
I've edited the question to show actual realtions - realtebo
relation function in Report model? - bool.dev
what's a relational function ?! i've a Relation in report model, see the main post . - realtebo
ah, sorry missed it the first time. OK you are using grid-view? - bool.dev
Yes I'm using the admin view with CGridView - realtebo

2 Answers

1
votes

You should be able to get the group.name like this(from report's admin view):

user.group.name

And your current relations will do, also you do not have to use any criteria.

0
votes

You can also use like this:-

$criteria->with = array('user', 'user.group');
group.name

One more solution for the problem. (Tested)