|
本帖最后由 程勇 于 2012-10-23 15:57 编辑
bug重现步骤:
1.在“分类模型管理”-“添加新分类模型”中添加一个模型
2.在分类模型管理,点击刚刚添加的那个模型的“字段管理”-“添加新字段”
随便先添加一个字段,只为测试用
3.上述动作完成后,点击“内容管理”-“刚刚添加的那个分类模型”-“添加”
到这一步的时候就报错了
PHP复制代码 Field 'path' doesn't have a default value 复制代码
一看就知道是这个叫path的字段没有默认值,刚刚接触这个CMS,我也不知道这个字段具体是干啥用的
打开对应的程序文件;/shared/models/category_del.php
找到添加分类模型的那个函数:
PHP复制代码
/**
* 新增分类模型
*
* @access public
* @param array
* @return bool
*/
public function add_new_category ($data)
{
if ($this->db->insert($this->db->dbprefix('cate_models'), $data))
{
$this->load->dbforge();
$table = 'u_c_' . $data['name'];
$this->dbforge->drop_table($table);
$this->dbforge->add_field(array('classid' => array('type' => 'INT', 'constraint' => 5, 'unsigned' => TRUE, 'auto_increment' => TRUE)));
$this->dbforge->add_key('classid',TRUE);
$this->dbforge->add_field(array('parentid' => array('type' => 'INT', 'constraint' => 5, 'unsigned' => TRUE, 'default'=>0)));
$this->dbforge->add_field(array('level' => array('type' => 'INT', 'constraint' => 2, 'unsigned' => TRUE, 'default'=>1)));
//$this->dbforge->add_field(array('path' => array('type' => 'VARCHAR', 'constraint' => 50)));
// 给加一个默认值吧,由于是varchar类型的,就随便扔了个空字符串
$this->dbforge->add_field(array('path' => array('type' => 'VARCHAR', 'constraint' => 50, 'default' => '')));
$this->dbforge->create_table($table);
return TRUE;
}
return FALSE;
} 复制代码
到这儿问题就解决掉了,但是这个值具体是干啥用的,暂时还不清楚,请有知道的告知一下{:soso_e100:}
|
|