Codeigniter:为什么我的数据库函数调用不再在我正在创建的其他控制器中解析,即使我在以前的控制器中做过类似的查询;他们工作得很好吗?使用output-> profiler(),我发现create_student()函数中的数据库函数调用未被解析。对我来说奇怪的是为什么相同的函数结构在我创建的先前控制器中起作用。以下代码标记在使用相关方法名称的其他控制器中工作正常,如 public function create_group()
, public function create_class()
。重复相同的模式。
public function create_student(){
$this->output->enable_profiler(TRUE);
if($this->input->is_ajax_request() && $this->input->post('ajax') == 1){
$this->form_validation->set_rules('first_name[]', 'First Name', 'trim|required|min_length[2]|max_length[20]');
$this->form_validation->set_rules('last_name[]', 'Last Name', 'trim|required|min_length[2]|max_length[20]');
if ($this->form_validation->run() == FALSE) {
$this->output->set_status_header('400');
echo '<span class="admin_validation_error" style="color:#ff0000">'.validation_errors().'</span>';
} else {
$first_name = $this->input->post('first_name');
$last_name = $this->input->post('last_name');
if($this->student_model->create_student($first_name, $last_name) == true){
echo '<span class="validation_success" style="color:green; font-weight:bolder">Well done! Student(s) successfully created.</span>';
}
}
}else{
redirect('errors/not_found');
}
}
答案 0 :(得分:0)
我终于发现了什么问题。虽然这很有趣。我没有在我创建的后续表中包含用户名字段。这使我无法执行查询或加载Datatable。用户名字段存在于我创建的前几个表中,需要存在于我尚未为应用程序创建的所有表中。谢谢你们给我一个线索。干杯