melaniecarr23 0 Posted May 15, 2016 Report Share Posted May 15, 2016 I have been using the Yii Book to create an admin module for a site I didn't create that uses the yii framework. I was able to successfully create the module, apply login functionality to it, and implement Yii booster for extendedgrid functionality with inline editing. I can link the text from a column using the foreign key relation to a different model's view (primary key) and display those results using the TbExtendedGridView. What doesn't seem to work for me is displaying the results according to a different attribute other than the primary key. Link: http://mysites.com/index.php?r=admin/registrations/adminlinked&id=29 http://mysites.com/index.php?r=admin/registrations/divisionLevel&id=3 RegistrationController: public function actionAdminLinked($id) { $model = $this->loadModel($id, 'Registrations'); $this->performAjaxValidation($model, 'registrations-form'); if (isset($_POST['Registrations'])) { $model->setAttributes($_POST['Registrations']); if ($model->save()) { $this->redirect(array('view', 'id' => $model->ID)); } } $this->render('adminlinked', array( 'model' => $model, )); } public function actionDivisionlevel($id) { $model=Registrations::model()->with('divisionLevel','division','level','players')->findAllByAttributes(array( 'divisionLevelID'=>$id, )); $this->performAjaxValidation($model, 'registrations-form'); $this->render('adminlinked', array( 'model' => $model, )); } Note: I'd like to add the ability to display player names (2 to 4 depending on the registration), division and level names (through divisionLevel relations). actionAdminLinked displays results correctly. actiondivisionLevel displays a blank screen. What on earth am I doing wrong that I can't seem to get this to work? I've tried for hours. Quote Link to post Share on other sites
melaniecarr23 0 Posted May 16, 2016 Author Report Share Posted May 16, 2016 I figured out what I was doing wrong. I now just use the admin.php view for both, but with different controller actions. public function actionAdminLinked($id) { $model = new Registrations('search'); if (isset($_GET['Registrations'])) $model->setAttributes($_GET['Registrations']); $model->ID = $id; $this->render('admin', array( 'model' => $model, )); } public function actionDivisionlevel($id) { $model = new Registrations('search'); if (isset($_GET['Registrations'])) $model->setAttributes($_GET['Registrations']); $model->divisionLevelID = $id; $this->render('admin', array( 'model' => $model, )); } I still don't know how to display the many players for each registration in the GridView, if anyone has a clue please help! Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.