2014-03-31 50 views

回答

2

型號

按照慣例模型是奇異的,因爲它代表像一個帖子,用戶等的單個對象..但數據庫表名是複數,因爲它們代表對象的集合。

在您的案例中,型號名稱爲HighScore,導軌將在文件high_score.rb內尋找類定義class HighScore < ActiveRecord::Base。您可以在課堂內執行所有驗證和模型相關任務。

控制器

控制器是複數,因爲它表示模型對象。儘管對控制器使用複數名稱只是一種慣例。例如用戶控制器將代表來自用戶模型的對象。

你的情況,上面的腳手架會生成一個控制器HighScores和軌道將尋找類定義class HighScoresController < ApplicationController文件high_scores_controller.rb

裏面在你的控制器,你可以找到一些寧靜的操作,如indexshoweditupdatedestroy 。索引操作的目的是列出所有高分,因此您可以定義一個實例變量@highscores,它將存儲數據庫表中的所有高分,如@high_scores = HighScore.all,然後將其傳遞給索引視圖。同樣,show動作的目的是顯示一個高分。在您的show動作中,您可以定義一個實例變量@highscore,它將存儲特定的高分形式db表,如@high_score = HighScore.find(params[:id]),並將其傳遞給顯示視圖。

1

爲了解釋你的問題,我考慮像下面的一個例子:

rails generate scaffold User name:string email:string 

我們使用單數名User,而不是Users因爲支架的名字如下機型的慣例,這是獨特的,而不是資源和控制器,這是複數。

我認爲這個回答對你有幫助。