现在,回到手头的主要问题 – 使用Symfony,它会根据您将模块关联到的表(在构建时)为您生成所有表单.我的问题是,你为什么要生成这些表格?在大多数情况下,这些是静态表单,应该很容易在模板中编辑.
对我来说,主要的问题是,如果你有一个后端和前端开发人员团队,也许还有一些设计师.设计人员或前端开发人员(可能有或没有太多或任何PHP经验)想要在模板目录中更改表单(用于审美目的),模板目录包含所有视图.好吧,它们不能真的,因为它都是由专门为该表单构建的表单类生成的.那么,现在他们需要回到后端开发人员并要求他们为他们改变一些东西?
我可能会错过表单生成的观点,但是我看到它的方式 – 如果它是静态的,则不需要以编程方式生成它,但如果它是完全动态的,那么是的,它没关系.
对此有何看法?
你当然可以在任何你想要的地方使用验证器类,但是我觉得表单框架很好地封装了它.
渲染表单虽然是一个单独的问题 – 正如您所提到的,您有一个观点. Symfony中的懒惰方法是简单地执行<?PHP echo $form; ?>但最好自己渲染单个字段,例如:<?PHP echo $form [“fieldname”] - > render(); ?>等等.如果您的视图是这样构建的,那么您的前端开发人员应该能够根据需要重新排序字段.
编辑:在渲染过程中添加类和其他属性:
<?PHP echo $form["fieldname"]->render( array("class" => "myNewClass","title" => "My Title",...) ); ?>
编辑2基本上我要传达的是,您将始终能够找到Symfony中的表单框架不合适的角落案例.你可以找到每个框架中可能的每个组件;-)但是在大多数情况下,它可以很好地完成工作并且相对容易.如果你发现自己一直在与它作斗争,那么我建议你从错误的角度来看它或者你刚刚找到了上面提到的所有角落情况:-)