首页 | 新闻 | 交流 | 问吧 | 文档 | 手册 | 下载 | 博客

收藏此问题 发表新评论

问个关于MODELS的问题。

如何在MODELS文件中(继承DB_TABLE)的类文件中直接使用$this->_request->getParam来获取链接参数的值??
他好像只能$this->_request->getPost表单传来的值。
昵称: ddjj123  时间: 2007-08-20 15:38:00
无人顶,自己顶。...
昵称: ddjj123  时间: 2007-08-20 15:58:00
models 怎么可能直接引用$_Get或者$_Post的值呢?

一般都提炼出来models单独实现;
在controller里获取$_Get或者$_Post的值,引用models。
昵称: qqinxl  时间: 2007-08-20 22:47:00
楼主试试这样:
复制PHP内容到剪贴板
PHP代码:
class Threads extends Zend_Db_Table
{
    
/**
     * The table name.
     *
     * @var string
     */
    
protected function _setup()
    {
        
$config Zend_Registry::get('config');
        
$this->_name $config->db->config->prcode.'threads';
        
$this->_request = new Zend_Controller_Request_Http();
        
parent::_setup();
    }


后面就直接用
$this->_request->getPost('xxxx')
就可以获取Post数据啦~
昵称: scauren  时间: 2007-08-21 07:41:00
引用:
原帖由 qqinxl 于 2007-8-20 22:47 发表
models 怎么可能直接引用$_Get或者$_Post的值呢?

一般都提炼出来models单独实现;
在controller里获取$_Get或者$_Post的值,引用models。
这样不能更好的重用代码。
昵称: ddjj123  时间: 2007-08-23 07:47:00
引用:
原帖由 scauren 于 2007-8-21 07:41 发表
楼主试试这样:
[php]class Threads extends Zend_Db_Table
{
    /**
     * The table name.
     *
     * @var string
     */
    protected function _setup()
    {
        $config = Zend_R ...
其实我想实现的是收接LINK参数传来的值,而不是POST过来。POST过来的方法我也知道了。
昵称: ddjj123  时间: 2007-08-23 07:48:00
可以用getQuery(),不过你这样好像和mvc的思想不符合啊
昵称: weiye  时间: 2007-08-23 08:51:00
$this->getRequest()->getQuery =========> $_GET
$this->getRequest()->getPost =========> $_POST
昵称: aultoale  时间: 2007-08-23 11:46:00
Model 原则上不应该直接取 GET 和 POST,而是暴露出业务方法供控制器调用
昵称: fleaphp  时间: 2007-08-23 22:31:00
引用:
原帖由 fleaphp 于 2007-8-23 22:31 发表
Model 原则上不应该直接取 GET 和 POST,而是暴露出业务方法供控制器调用
意思是任何的POST OR GET都在CONTROLLER处理?然后调用业务方法时再把值传过去吗?
这样的话,很多语句要重写呀。
昵称: ddjj123  时间: 2007-08-24 13:46:00
冒试我写的代码。哈。
昵称: xgwork  时间: 2007-08-24 16:49:00
Model 通常是一个单独的层次,如果和 GET、POST 依赖,那么你如果要在其他地方调用这些 Model,就必须确保 GET、POST 里面有需要的数据。如果 Model 的方法依赖参数来工作,就不会有这个问题。控制器里面直接用 GET、POST 作为 Model 方法的参数就行了。而在其他地方调用 Model,提供需要的参数即可。即便数据不是来自 GET、POST。
昵称: fleaphp  时间: 2007-08-24 17:21:00