在我的控制器功能中,我添加了一个名为' PC-MB'的自定义列,该列在数据库中不存在。使用行中的其他值动态计算该值。哪个工作正常。 我的问题是 - 如何使此列可排序。默认情况下,它不可排序。
$this->load->library('grocery_crud');
$crud = new grocery_CRUD();
$crud->where('is_history',0);
$crud->where('category',"HighwayStats");
$crud->set_table('hwdata');
$crud->order_by('last_update');
$crud->set_subject('Highway Data');
$crud->columns('name', 'last_update', 'PC-MB');
$crud->callback_column('PC-MB',array($this, '_totalpc_callback') );
$gcrud_output = $crud->render();
答案 0 :(得分:0)
似乎服务器端不存在新字段PC-MB
。它是您尝试在运行时创建的字段。在Felxigrid
中,观察到,顺序也设置在服务器端而不是客户端。并且由于该字段实际上不存在,因此对订购该字段没有任何影响。
您可以选择其他选项,您可以选择继续使用数据表主题。那里你将有客户端排序。
如果你可以在firebug上调试,你会看到
500内部服务器错误
以及像这样的回复中的一些文本
发生数据库错误
错误号码:1054
'order clause'中的未知列'PC-MB'
SELECT
hwdata
。* 来自hwdata
ORDER BYPC-MB
asc 限制50