2016-11-30 67 views
1

假設我有一本書Entity與ManyToOne關係的Author實體。Symfony錯誤當搜索過濾器存儲在會話中

在列出所有圖書的頁面上,我有一個搜索表單字段'作者'。 我將我的搜索表單的數據存儲在名爲searchFilter的對象中(而非實體,未保留)。 我做了一個SearchFilterType其中我使用EntityType類爲了顯示作者的選擇列表,所以人們可以搜索與作者的所有書籍。

當我訪問其他網頁,然後再回到搜索頁面,我希望我的最後的搜索要記住,這就是爲什麼我存儲在會議searchFilter對象。

$request->getSession()->set('searchFilter', $searchFilter); 

但是當我回到搜索頁面,我得到的錯誤:

Entities passed to the choice field must be managed. Maybe persist them in the entity manager?

我的問題

我必須把我的searchFilter對象成實體爲了堅持它,還是有一個更簡單的方法?我不希望我的searchFilter永遠持續下去,會話時間就足夠了。

編輯:

我想我的問題是,什麼優秀的解決方案是提供的this one重複。

回答