与此question相关我在尝试编辑之前创建的任何记录时遇到错误。这是错误(我省略了一些不相关的部分,因为没有如此多地扩展帖子):
500 |内部服务器错误| Doctrine_Record_UnknownPropertyException 未知方法Estado ::
在()中的堆栈跟踪 SF_ROOT_DIR / lib中/供应商/ symfony的/ lib目录/插件/ sfDoctrinePlugin / lib中/供应商/学说/教义/ Record.php 2658行...... }
} throw new Doctrine_Record_UnknownPropertyException(sprintf('Unknown method
%s ::%s',get_class($ this),$ method));
} /** at Doctrine_Record->__call('', array()) in SF_ROOT_DIR/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/record/sfDoctrineRecord.class.php
第197行...在sfDoctrineRecord-> __调用('',array())在n / a行n / a ...在Estado->()中n / a行n / a ... at call_user_func(array(object('Estado'),''))in SF_ROOT_DIR /插件/ sfDependentSelectPlugin / lib中/源/ sfDependentSelectObjectSource.class.php 第56行...在sfDependentSelectObjectSource-> getRefValue('15')中 SF_ROOT_DIR /插件/ sfDependentSelectPlugin / lib中/小工具/ sfWidgetFormDependentSelect.class.php 第98行......在 sfWidgetFormDependentSelect-> render('persona [estado_id]','15', array(),null)in SF_ROOT_DIR /插件/ sfDependentSelectPlugin / lib中/小工具/ sfWidgetFormObjectDependentSelect.class.php 70号线...... sfWidgetFormObjectDependentSelect-> render('persona [estado_id]','15', array(),null)in SF_ROOT_DIR /插件/ sfDependentSelectPlugin / lib中/小工具/ sfWidgetFormDoctrineDependentSelect.class.php 第67行......在 sfWidgetFormDoctrineDependentSelect->呈现( '角色[estado_id]', '15',array(),null)in SF_ROOT_DIR / lib中/供应商/ symfony的/ lib中/小工具/ sfWidgetFormSchema.class.php 第512行...在sfWidgetFormSchema-> renderField('estado_id','15', array(),null)in SF_ROOT_DIR / lib / vendor / symfony / lib / form / sfFormField.class.php第119行 ...在sfFormField-> render()中 SF_ROOT_DIR / lib / vendor / symfony / lib / form / sfFormField.class.php第58行
我不知道在哪里寻找 Estado :: 或失败的地方,对此有什么解决方法?
答案 0 :(得分:1)
所以问题在于小部件的定义。使用的原始定义:
$this->widgetSchema['estado_id'] = new sfWidgetFormDoctrineDependentSelect(array(
'model' => 'Estado',
'add_empty' => 'Seleccione estado',
'ajax' => true
));
$this->widgetSchema['municipio_id'] = new sfWidgetFormDoctrineDependentSelect(array(
'model' => 'Municipio',
'depends' => 'Estado',
'add_empty' => 'Seleccione municipio',
'ajax' => true,
'order_by' => array('nombre', 'asc')
));
这两个小部件都是类sfWidgetFormDoctrineDependentSelect
,但实际上只有municipio_id
具有依赖性。
似乎sfWidgetFormDoctrineDependentSelect
需要ref_method
或depends
选项才能正常使用。
如果您将estado_id
更改为此功能,则可以使用:
$this->widgetSchema['estado_id'] = new sfWidgetFormDoctrineChoice(array(
'model' => 'Estado',
'add_empty' => 'Seleccione estado',
));