2011-12-14 67 views
0

我使用Auth組件進行用戶登錄和註冊。我想將Country和State下拉列表添加到我的用戶模型中。有人可以幫助我在模型文件中的所需關聯?Cakephp:用戶模型與國家/國家dropdowm

class User extends AppModel { 

    var $name = 'User'; 

    var $belongsTo ="Country" ; 
} 


<?php 
class Country extends AppModel { 

    var $name = 'Country'; 

    var $hasMany = array('User'); 

}?> 

我的觀點:

echo $form->input('country_id'); 

但我得到一個空dropdowm!

+0

最重要的是什麼?你還嘗試過什麼嗎?不起作用的代碼然後可以在這裏發佈。 – mark 2011-12-14 22:51:23

+0

是的,讓我用我擁有的更新! – jagamot 2011-12-14 22:58:02

回答

0

您的belongsTo的定義是錯誤的。在屬於關聯屬性必須是一個數組:

public $belongsTo = array('Country'); 
用戶

然後控制器,請確保你得到國家名單:

$countries = $this->User->Country->find('list'); 
$this->set(compact('countries')); 

而且你的觀點看起來是這樣的:

<?php echo $this->Form->create('User');?> 
    <fieldset> 
     <legend><?php echo __('Edit User'); ?></legend> 
     <?php 
     echo $this->Form->input('id'); 
     // more fields 
     echo $this->Form->input('country_id'); 
     ?> 
    </fieldset> 
<?php echo $this->Form->end(__('Submit'));?>