这是场景(非常常见):
应该允许用户:
我正在考虑按照以下步骤进行操作,然而,在此之前,我想请求一些关于此类主题的更有经验的人。
您能否验证上述步骤并指出可能存在的重要缺失点?
我们需要:
对于A)
CActiveForm
; 对于B)
enableClientValidation
设置为true
; render both models
一张表格; 对于C)
scenarios
。Ajax form validation
也应该是enable
; 对于D)
tabular input
。在开始使用Yii进行编码之前,我是否遗漏了一些重要的内容?你会使用不同的步骤吗?如果是的话,请你分享一下吗?
答案 0 :(得分:3)
如果您想展示Yii框架的全部潜力,您宁愿扩展CFormModel以包含您想要以单一形式集成的各种模型。
为什么呢?因为您想要使用的CActiveForm类被认为可以使用单个模型。否则,您将必须包含多个表单,每个模型一个,在用户提交创建操作时,通过Javascript立即提交所有表单,并在服务器端连接它们。
另一个简单的方法是拆分流程,以便让用户首先使用带有CActiveForm的团队模型创建团队,然后在创建团队后,将用户重定向到例如team/view/1
,并使用CActiveForm的单个模型再次呈现成员数据的表格形式。如果您想确保每个团队至少存在一个成员,您可以将其保存在团队模型中,例如Team.leader_member。
我希望它有所帮助。欢呼声。