我對symfony相當陌生,目前我正在用它做一個學校項目。SonataMediaBundle:允許用戶上傳鏈接
我必須做一個功能,我的用戶可以上傳youtube鏈接視頻(如博客文章,但與視頻)。所以我決定使用sonataMediaBundle處理我的鏈接上傳。
我已經安裝了SonataAdminBundle和SonataUserBundle。它可以讓我的CMS已經設置,但我發現只有管理員可以上傳鏈接,我無法找到如何讓我的用戶上傳鏈接視頻,而無需讓他們訪問我在SonataMediaBundle中的所有CMS。
好吧我正在進行我的項目,我簡單地(沒有奏鳴曲)。我有一個問題與教條,我無法檢索我的數據庫對象。
我跟着symfony文檔,所以我有我的「showAction」。
public function showAction($id)
{
$video = $this->getDoctrine()
->getRepository('MediaBundle:Media')
->find($id);
if (!$video) {
throw $this->createNotFoundException(
'No video found for id '.$id
);
}
return $this->render("MediaBundle:LinkUpload:linkupload.html.twig", array(
'video' => $video,
));
}
然後在我的模板,我做:
{% for item in video %}
{{ item.name }}
{% endfor %}
我也試過沒有ID參數和使用的findAll()代替find()方法,但我總是得到一個錯誤,告訴我的變量「視頻」不存在。
對此有何想法?
我也想知道:您如何正確上傳YouTube視頻鏈接?我正在考慮放置一個標籤,並要求用戶每次都上傳嵌入的YouTube鏈接,但這樣做並不複雜嗎? (對於我的意思是用戶)。
在此先感謝您的即將到來的答案!
你不應該需要一個包來做到這一點。它是一個簡單的例子,創建一個實體來保存數據,然後將這些數據渲染成模板。走開,如果你陷入困境,讓我們看看你的嘗試。 – DevDonkey