(急急急)请大家帮我看个问题。。。。
在model中有一个方法function getExpre($code)
{
$this->db->select('expression');$this->db->from('tbl_code');$this->db->where('code',$code);
$query=$this->db->get();
return $query;
}
在Controller中有一个方法
function getProjType($code)
{
$query=$this->projectCl->getExpre($code);
$row['expre']=$query->row_array();
return $expre['expression'];
}
但是我要在试图中某一个文本框处要调用getProjType()这个方法,并在试图中传给它一个参数,然后这个控制器方法会直接返回结果
比如:
<td>名称</td>
<td><?php
我要这样调用并直接在这里现实结果---getProjType/参数;
?>td>
请问在这里怎么直接调用控制器方法呀? 为什么 不再Controller里面写呢?
为什么要写在view里面呢~ 我的试图里需要显示的东西怎么能写在控制器里呢。。:o,而且我是同时在一个试图中调用2个控制器。。
即使可以在控制器里写,但是我控制器需要一个参数,这个参数必须由另一个控制器往试图里加载数据的时候才能提供。。
[ 本帖最后由 zhuyaopeng 于 2007-12-16 22:40 编辑 ] 在视图中调用的方法,那叫做辅助函数!或者辅助方法。而不是控制器里的方法!
这你要先搞明白。 对。。楼上说的没错。。但是我现在需要控制器里的函数呀。。:'(
难道有跟它一样的辅助方法吗。。 CI有没有一种机制。。可以在视图中调用控制器中的方法吗?
或者又其他的替代方法也行。。:P
虽然是利用MVC的思想,比如用java写MVC就可以在试图中调用控制器的方法 跟你说了,如果你想这么用,那你就得用 Helper。自己写个 Helper 明白吗? 这样是不对地,你要把所有的结果都规划好,然后调用视图,跟模板有点类似。
如果你想用动态的方法在页面上某一块输出东西,那就要用ajax gaochao 说的对,不能盲目的堆砌代码,要规划好,你的程序要是非调用控制器里的函数,那你的程序设计就是糟糕的设计,你应该把这个代码都放到 helper 中,控制器也调用这个 helper。 //In the Controller's method
$code = 'param get from uri or post';
$data = array();
$data['expression'] = $this->getProjType($code);
$this->load->view('TheViewYouWantToLoad', $data);
//In the VIew
<td>名称</td>
<td><?= $expression ?>td>
页:
[1]
2