2011-09-27 172 views
0

我有一個管理員使用sfDoctrineGuardPlugin。我也有另一個表,sf_guard_user_profile,它擴展了sf_guard_user表,查看記錄時,包括更多領域,如地址,年齡等sfDoctrineGuardPlugin和管理過濾器

我的問題是,我嵌入型材(sf_guard_user_profile)信息到sf_guard_user記錄在管理員生成的模塊中。這工作正常,但我想然後能夠使用sf_guard_user_profile表中的一些過濾器。

我試圖將這些加入到generator.yml文件,但我這引發一個錯誤

generator.yml

................... 

    filter: 
    display: [username, email_address, address_1, is_active ] 

Widget "address_1" does not exist. 

ADDRESS_1是sf_guard_user_profile

場這是可能做到?

感謝

+0

好吧,似乎已經做到了 – terrid25

回答

0

好了,所以我不得不做的工作一點點在sfGuardUserFormFilter類,

$this->widgetSchema['age'] = new sfWidgetFormInputText(array(
     'label' => 'Age' 
)); 

    //Type of validator for filter 
    $this->validatorSchema['age'] = new sfValidatorPass(array ('required' => false)); 

public function getFields() 
{ 
    $fields = parent::getFields(); 
    $fields['age'] = 'age'; 
    return $fields; 
} 


public function addAgeColumnQuery($query, $field, $value) 
{ 
    $rootAlias = $query->getRootAlias(); 

    $query->where('p.age LIKE ?', '%'.$value.'%'); 

    //remember to return the $query! 
    return $query; 
} 

然後我可以用在generator.yml文件age領域。

謝謝