【问题标题】:how can I get post data in Kohana 3 controller?如何在 Kohana 3 控制器中获取发布数据?
【发布时间】:2011-03-01 21:45:11
【问题描述】:

我有一个带有表单的视图,所以当用户提交它时 - 谁能给我一个链接或一个简单的代码示例 Kohana 3 的文档和教程是如此 对CI很差。

【问题讨论】:

    标签: model-view-controller post kohana kohana-3


    【解决方案1】:

    在 Kohana 3.1 中你应该使用 Request->post():

    Request::current()->post()
    

    或者如果在你的控制器中:

    $this->request->post()
    

    由于 Kohana 是 HMVC,您可以使用专用的发布数据调用子请求,因此不鼓励使用超全局 $_POST,因为它不是请求独有的。

    【讨论】:

    • 也可以使用$this->request->post($key) 获取$_POST[$key](如果存在)
    • 虽然它与这个问题无关,但我来到这里寻找有关 Kohana 的一般请求数据,我发现 $this->request->query()post() 的 GET 版本,只是想我' d 在我的情况下为任何人提及它。 :)
    【解决方案2】:

    在 Kohana 中访问帖子数据的另一种方式

    $username = Arr::get($_POST, 'username', 'default_username');
    

    【讨论】:

      【解决方案3】:
             function action_add()
         {
          $tpl =& $this->template;
      
          // Add companies
          $company_orm = ORM::factory('company');
          $company_orm->values($_POST);
      
          if ( $company_orm->check() )  //Validation Check
          {
              if ( $company_orm->save() )
              {
                  // Inserting data
              }
              else
              {
      
                  // Error
              }
          }
          else
          {
                  // Validation Failed
          }
      
      }
      

      小例子。您可以使用 protected 实现模型中的所有验证。

      谢谢

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-29
        相关资源
        最近更新 更多