簡體   English   中英

如何在我的應用程序的主頁上設置一個“精選部分”,該部分只能由“管理員”編輯?

[英]How do I setup a "featured section", on my home page in my app, that will only be editable by an 'admin'?

所以在我的應用程序的home#index上,第一行有 4 張圖像並排。

這就是所謂的featured部分。 這 4 張圖片將由admin選擇,每個人都可以看到。

我沒有home模型,只有一個homeController

因此,鑒於我希望能夠將這些圖像存儲為單獨的對象,並允許對那些僅在home#index上顯示的圖像進行常規 CRUD 操作,也許home#edit將是編輯頁面......我應該如何接近這個?

我應該創建一個獨立的模型,稱為featured_images或類似的東西,然后在Home控制器中從該模型中提取嗎?

這是我想到的一種方法,但我想知道為少量圖像創建模型是否太過分了? 但話又說回來,這些圖像會定期更改 - 所以也許它們不僅僅是“少數”。

想法?

“鑒於您希望能夠存儲這些圖像”......意味着創建模型並不過分。 Rails 將使您很容易將圖像存儲為模型,而很難以其他方式存儲它們。 走簡單的路。

模型對象不必有一個 ActiveRecord(或其他 ORM)存儲來支持它; 它也可以使用文件系統。 或者,除了包含的邏輯之外,它不能存儲任何文章。 模型的主要目的是封裝業務邏輯並將其從控制器層抽象出來。 這導致代碼更易於閱讀、測試和維護。 如果主題不涉及“業務”邏輯,則助手或庫模塊可能更適合。

如果邏輯非常簡單,您當然可以將其保留在控制器中。 但在這樣做之前,請確定您是否覺得簡單值得在更易讀性、可測試性和可維護性之間進行權衡。 答案可能只是“是”,但通常情況並非如此。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM