[英]How do I pass a parameter from URL to an admin generated form?
我有兩個模型,即“客戶端”和“寵物”,每個模型都有管理員生成的模塊。 涉及一對多關系,因此我希望能夠使用 URL(即 /pet/new/cid/6)中指定的 cid(客戶端 ID)創建一個新寵物
我已經禁用了客戶端表單中的 cid 字段,以便 URL 中的參數將作為默認值傳遞。
我嘗試使用以下代碼覆蓋管理員生成的模塊的 actions.class.php:
public function executeCreate(sfWebRequest $request)
{
$this->form = $this->configuration->getForm();
$params = $request->getParameter($this->form->getName());
$params["cid"] = $request->getParameter('cid');
$request->setParameter($this->form->getName(), $params);
parent::executeCreate($request);
}
如果我更換它就可以了
$request->getParameter('cid');
使用硬編碼的 int 值,所以我認為問題在於我無法從 URL 獲取參數。
我想我可能缺少一些路由配置,但我對這個框架相當陌生,所以我不確定該怎么做。
您可以像這樣簡單地在 url 中傳遞參數 cid:
/pet/new?cid=6
並通過以下方式在您的操作中獲得結果:
$request->getParameter('cid');
路由的第一部分(/pet/new)是一個具體的學說RouteCollection
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.