【发布时间】:2015-02-24 21:35:29
【问题描述】:
我正在使用 Parse + CodeIgniter 开发一个项目。 我有两个屏幕来管理 ParseUsers:allUsers.php,它列出了所有用户。 还有 detailUser.php,用于创建/编辑用户。
当用户提交表单(新 ParseUser)时,我调用 save 方法。其中包含代码:
try{
if ($user_id)
$user->save(true); // Update
else
$user->signUp(); // Insert
$this->session->set_flashdata('success', 'Success');
redirect('all-users');
}
catch(Parse\ParseException $error){
$error_message = $error->getMessage();
$this->session->set_flashdata('error', 'Error: ' . $error_message);
$this->data['user'] = $user;
$this->view = 'user/userDetail';
}
在视图中,我有这个(示例用户名):
<input type="text" id="name" name="name" class="form-control" required value="<?php if(isset($user)): echo $user->name; endif;?>">
表单保持正确填写的字段,但 flashdata 为空,如果我刷新页面,则显示 flashdata。 所以,我在搜索后发现有人说 flashdata 只适用于重定向。
如果我重定向我的页面,就会出现 flashdata。但是,这些字段没有填写。
我阅读了有关 set_value 的信息,这是维护字段的正确方法吗?但是,我喜欢只有两个视图,一个是列出所有用户,另一个是创建/编辑用户。那么,如果我使用 set_value,这可能吗? 最佳做法是什么?
【问题讨论】:
标签: php codeigniter