我有几个关于CI应用程序设计的问题。Codeigniter应用程序设计
问:当创建一个新窗体并使用CI的form_helper时,我在控制器中创建数组并将其传递给view/form_input()方法。我应该在控制器,视图还是单独的文件中执行此操作?在我的控制器中,我为我的表单创建一个方法,即new_user(),并在我的view/form_open()中指定一个不同的方法来处理动作(即add() ,编辑(),删除()..等)&该方法处理验证。这是我推崇的方式;然而,如果验证失败,我很难传递数据。有什么建议么?
问:我有一个或两个实例,当我执行表单验证时,我需要验证两个$ _POST变量。一个例子是,在验证时,我需要查询数据库以确定输入的业务是否已经存在(基于业务名称和邮政编码),然后重定向回视图并保留后变量。到目前为止,我还没有找到一种方法来创建自定义回调函数,因为您只能传入一个参数。我已经能够实现这个工作的唯一方法是验证通过,然后执行数据库检查,如果业务存在,我将$ _post放入session/flashdata中,并使用重定向重新加载视图。定义form_input属性的数组调用set_value,因为它是为数组中的每个记录提取flashdata的地方。
$data['name'] = array(
'name' => 'name',
'id' => 'name',
'value' => set_value('name', $this->session->flashdata('name')),
'maxlength' => '200',
'size' => '79',
'class' => 'text'
我意识到这真的归结为偏好;不过,我真的很想了解我可以预期的缺陷以及其他人如何设计他们的应用程序。我已经下载了示例应用程序,并且我搜索了大量搜索内容,但我还没有找到太多的讨论。任何建议,非常感谢。
谢谢!
if($ this-> input-> post('field)!== FALSE)是一样的东西。 – 2010-01-26 11:47:55