2015-09-05 111 views
0

的在ASP.NET中,當我想給模型實例的列表中查看層,我將它們轉換成另一種類型(模型視圖)通過下面的代碼:轉換的實例爲另一種類型的實例

var userViewModels = users.select(new { 
    Name = Name, 
    UserName = Username 
}); 

我這樣做是因爲我不想將所有用戶模型數據(如密碼)發送到查看圖層。我把這段代碼放在我的業務邏輯層中。

我正在使用AJAX,並且我通過JSON協議發送了我的數據。 Ruby on Rails中的最佳做法是做什麼類似的操作?

回答

0

雖然它可能是不必要的主要場所, as dimakura pointed out,您可以使用select method查找時選擇任意屬性。你的例子最終會看起來像這樣:

@users = User.select(:name, :username) 
+0

來自.net,你可能會對https://github.com/bbatsov/rails-style-guide感興趣。按照某些慣例,Rails的效果最好。 –

+0

謝謝布拉德。我正在通過Json發送我的數據,我必須進行這種轉換。這正是我想要的。 –

+0

不客氣。這很有趣,但它與你的例子.NET代碼沒有太大的偏差。 –

1

在RoR中,您只需將模型傳遞給您的視圖。

另外,在RoR中查看可以直接從數據庫訪問(儘管不推薦)模型。所以「隱藏」模型在這裏沒有意義。

您可以考慮軌道生成腳手架作爲接近最佳實踐。

  1. 控制器用於從數據庫中選擇模型
  2. 視圖用於渲染模式,以用戶
  3. 型號是存儲業務邏輯
+0

不,我使用ajax,我發送我的數據由Json發送到客戶端。 –

+0

JSON響應也是Rails中的一個視圖 – dimakura

+0

謝謝dimakura –

相關問題