2011-05-08 189 views
0

我有一个简单的表格:UserInfoForm()。 当我第一次向用户显示表单时,我希望它可以填充来自User模型的特定对象的数据。 任何人都可以给我一个方向或例子吗? 谢谢!用对象填充自定义表格

+0

发布您的代码... – 2011-05-08 19:30:54

+0

UserInfoForm和User类的扩展名是什么? – Dziamid 2011-05-08 20:50:42

+0

UserInfoForm扩展了sfForm,而User是一个原则模型。我正在寻找像汤姆给我的解决方案,但我得到一个错误(阅读他对我的评论)。谢谢! – tamir 2011-05-08 21:44:15

回答

1

通常情况下,你会做这样的,但是这取决于你如何UserInfoForm关系到用户对象:

$user = Doctrine::getTable('User')->findOneById($user_id); 
$this->form = new UserInfoForm($user); 

编辑:我假设你使用的原则。

+0

我试了一下,但后来我得到: “用户”上的未知记录属性/相关组件“_csrf_token”。 它似乎在用户中搜索_csrf_token列。 我如何“告诉”csrf字段不是用户列中的表单? – tamir 2011-05-08 21:41:40

+0

嗯......这很奇怪,不应该发生。你是否只在模板中使用“<?php echo $ form ['_ csrf_token'] - > render()?>”来渲染标记,或者你还在做其他事情吗? – Tom 2011-05-08 22:06:07

+0

如果问题仍然存在,可能可以尝试的是声明表单类中的相关字段:“$ this-> useFields(array('field1','field2','field3'));” – Tom 2011-05-08 22:09:47