2014-01-24 20 views
0

PrimeFaces是一個Java庫,它提供了常用的前端Web組件(例如對話框,表格,選擇菜單)。使用PrimeFaces的優點在於,當您使用PrimeFaces組件時,只需告訴它要使用哪些數據以及要更新服務器端的哪個屬性。 PrimeFaces庫從那裏取得它,在屏幕上創建組件,顯示數據以及處理與服務器端代碼的Ajax交互。什麼是Ruby on Rails/Django相當於PrimeFaces?

在Ruby或Python網絡編程世界中是否有與此相當的東西?在我看來,替代方法是每次從頭開始編寫組件,手動處理Ajax等,這聽起來很瘋狂。

非Java Web開發人員如何處理此問題?

+0

我想評論說PrimeFaces是一個JSF組件套件,而JSF是一個基於組件的*框架。另一方面,django和rails是MVC框架。因此,對於django或rails來說PrimeFaces是沒有的,因爲它們使用了不同的web開發範式(它們更類似於struts或spring mvc)。因此,爲了找到類似於Primefaces的東西,您需要從django或rails移開,併爲python或ruby找到一個基於組件的框架。 – Serafeim

+0

對於後端框架我其實很不明確 - 我只是想知道非JSF開發人員如何在前端避免不必要的代碼重複。如果您使用JSF,PrimeFaces提供了處理常見需求的組件,但其他人可以使用哪些組件?還是每個人都從頭開始真正編寫所有這些東西? – Kiwi

+1

那麼這是一個適用於Spring MVC或Struts開發人員的問題:)是的,大多數時候你處理AJAX和組件,但是還有其他的優點...看看這裏http://stackoverflow.com/questions/ 4801891 /請求差異的mvc和組件mvc,一般搜索「基於組件的mvc框架」 – Serafeim

回答

0

好吧,這聽起來很瘋狂,但我用這個RailsAdmin。它根據模型字段和關係生成視圖。通過「生成視圖」,我的意思是它在運行時執行(您不會在應用程序中擁有視圖副本等)。基本上,這個gem爲您提供了基本的功能,可以從一開始就管理您的數據無需花時間創建視圖和控制器)。而且,它不能用作PrimeFaces的直接等價物。但是對於原型設計階段,我認爲它會很好地完成。

+0

感謝您的回答!這似乎更類似於[Spring Roo](http://projects.spring.io/spring-roo/)創建CRUD操作的屏幕。我正在考慮更多的單個前端組件,例如,一個輸入框,用於輸入服務器方法和部分頁面刷新。 – Kiwi

+1

我不認爲在Rails嚴格分離問題的原因中存在一個簡單的解決方案。但是,您可以與Rails混合使用JavaScript框架。例如,AngularBootstrap是一個AngularJS + Bootstrap組合,有很多組件。這樣,您將嚴格使用Rails作爲後端,並將此框架作爲前端組件。不過你仍然需要寫一些綁定(在前端和後端之間)。 – marvelousNinja