我想創建一個簡單的博客示例,其中用戶有一個喜歡的類別附加到那裏帳戶。這意味着只能寫這個類別的文章。 (其中一些 - 主要是管理員 - 將有機會切換類別,但這不是問題...現在^^)在EntityRepository中訪問當前登錄的用戶
所以我首先創建了用戶和類別實體之間的關係。一切正常。每個用戶現在都選擇了一個主要類別。
唯一令我困擾的是我無法掌握EntityType(formbuilder)和EntityRepository類中當前登錄的用戶。
在我的「新郵政」形式中,與其他實體(如標籤)有關係。我在EntityType類中使用'entity'formtype來生成這些表單元素。現在,我不想過濾標籤,只允許與當前登錄的用戶類別具有相同類別關係的標籤可供選擇。
我試圖使用實體formtype中的query_builder選項。但是因爲我無法獲得當前的用戶對象,我不知道他選擇了哪個類別。與EntityRepository同樣的問題。
現在我可以過濾已經在PostController中的標籤,但問題是,我會一遍又一遍地需要。因此,我不想每次添加新內容時都要編碼。
我認爲這是最好把這個過濾器放在EntityRepository中。所以我總是可以訪問findAllByCategory。但我需要那裏的用戶對象。
完成此操作的最佳方法是什麼?尋覓了很多,但無論是我尋找了錯誤的條款或沒有人有這個問題:)
根據你的評論http://stackoverflow.com/questions/11709246/access-currently-logged-in-user-in-entityrepository/11709590#comment15534115_11709590 如果您認爲注射不是正確的方法,那麼您爲什麼建議相同? :) – 2012-07-29 16:20:18
@thecatontheflat我注入的表單類型(正確的地方...)不在標籤實體。你說過「你可以將你的實體定義爲服務」 - 哦,不,不是。 – gremo 2012-07-29 16:21:53
明白了。謝謝:) – 2012-07-29 16:22:59