我有一個symfony項目,我有一個模型,在這個例子中,我將命名爲Boat。從Boat的showSuccess頁面,我想鏈接到另一個模型的表單頁面。對於這個例子,我們將它叫做Ticket。當他們點擊鏈接時,我希望Boat對象被傳遞給Ticket表單,因爲我必須在Ticket表單頁面(newSuccess.php)上顯示一些特定的Boat字段(標題,價格等)。Symfony:從另一個模塊傳遞一個對象到一個表格
我想我的問題是,我如何將一個對象(作爲變量)傳遞給另一個模型的「新」表單頁面。我到處尋找,我似乎無法找到適合我的答案。謝謝!
UPDATE:
下面是一些我已經試過代碼:
的routing.yml租車頁面
<a href="<?php echo url_for('ticket_new_car', $car)?>" > Test </a>
上
ticket_new_car:
url: /ticket/:category/:iditem
class: sfDoctrineRoute
options: { model: car, type: object }
param: { module: ticket, action: new }
requirements:
id: \d+
sf_method: [get]
鏈接的actions.class.php
public function executeNew(sfWebRequest $request)
{
$this->item = $this->getRoute()->getObject();
$this->forward404Unless($this->item);
$this->form = new TicketForm();
}
_form.php這個
<?php echo $item->getTitle() ?>
我得到 「未定義的變量:項目」。除了「slug」部分之外,我在教程中做了所有的事情,因爲我沒有猛擊我的URL。我可能做錯了什麼?
謝謝你的鏈接。看到上面更新的問題,看看我試過的代碼,看看我做錯了什麼。 – djcloud23
在routing.yml文件中,嘗試在選項行中寫入「Car」而不是「car」,所以,在選項之前:{model:car,type:object}' - > options之後:{model :汽車,輸入:object}' – ilSavo
我發現我的問題是。我沒有將變量傳遞給'_form.php'部分。當我更新到'newSuccess.php'文件中的<?php include_partial('form',array('form'=> $ form,'item'=> $ item))?>'時,變量,現在我可以顯示該頁面上的字段。現在我遇到的問題是,它似乎沒有將行動中的變量傳遞給行動。我希望它能夠將'$ item-> getCategory'保存到'$ form-> setCategory'中,並且它似乎不會將該變量傳遞給'save'動作。什麼是一個簡單的方法來做到這一點? – djcloud23