Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Url 如何使用kohana3 Request::factory命令发送get参数?_Url_Kohana 3_Requestfactory - Fatal编程技术网

Url 如何使用kohana3 Request::factory命令发送get参数?

Url 如何使用kohana3 Request::factory命令发送get参数?,url,kohana-3,requestfactory,Url,Kohana 3,Requestfactory,我有一个Kohana3MVC应用程序 在视图中,我可以使用以下行显式调用控制器的操作: Request::factory('/test/deliveryaddress')->execute(); 但我还想向操作发送一个参数,并进行如下处理: public function action_deliveryaddress($region_name = NULL) { $view = new View('test/deliveryaddress'); $region_name

我有一个Kohana3MVC应用程序

在视图中,我可以使用以下行显式调用控制器的操作:

Request::factory('/test/deliveryaddress')->execute();
但我还想向操作发送一个参数,并进行如下处理:

public function action_deliveryaddress($region_name = NULL)
{
    $view = new View('test/deliveryaddress');
    $region_name = isset($_GET['region_name']) ? $_GET['region_name'] : '';
    $view->set('region_name', $region_name);
    $this->request->response = $view;
}
我尝试了这两种尝试,但都无效:

Request::factory('/test/deliveryaddress?region_name=top')->execute(); //error
Request::factory('/test/deliveryaddress', array('region_name'=>'top'))->execute(); //ignored

如何使用Request::factory()发送GET变量,或者是否有更好的方法将GET参数发送到操作?对于3.1,可以使用
Request
类的
query()
方法:

equest::factory('/test/deliveryaddress?)->query('region_name', 'top')->execute();
对于3.0,没有真正的隔离,您必须操作
$\u GET
数组。

从请求类和控制器中使用query()

而不是:

$region_name = isset($_GET['region_name']) ? $_GET['region_name'] : '';
尝试:

$get = $this->request->query();
$region_name = isset($get['region_name']) ? $get['region_name'] : '';