我尝试使用Url :: to()方法创建具有多个参数的Url但是它不起作用我也尝试了UrlManager-> creatUrl()方法但没有运气,我有漂亮的Url启用,如果我只使用一个查询参数它工作正常,但当我尝试添加更多我得到错误,下面是我的代码。
def f():
w.s = "one"
w.s = "one" # called before there is such an object
f() # called before w exists, it will error out
class SomeClass(object):
def __init__(self):
self.s = "two"
w = SomeClass()
f() # since w exists it will run
在url输出上面的两个案例中总是如下所示:
$linkUrl = \Yii::$app->UrlManager->createUrl(['sell/updatecategory', ['draftId'=> $model->draftId,'catid' =>$model->category_id]]);
<?= Html::button('Change category or product',['value'=>$linkUrl, 'id' => 'StartOver']) ?>
another try is:
$linkUrl = Url::to(['sell/updatecategory', ['draftId'=> $model->draftId,'catid' =>$model->category_id]]);
并且服务器抛出错误无法解析url,我想要的是这样的:
GET http://http://192.168.199.128/trobay/products/sell/updatecategory?1%5BdraftId%5D=20&1%5Bcatid%5D=50
系统添加了一些字符,我猜这是问题的原因,但我真的不知道如何删除它。我很热,任何人都可以帮助这个感谢
答案 0 :(得分:0)
不要将嵌套数组用于参数。 结构应如下所示:
[0 => route, param1 => value1, param2 => value2, ...]
所以在你的情况下
$linkUrl = Url::to([
'sell/updatecategory',
'draftId' => $model->draftId,
'catid' => $model->category_id
]);