Ruby on Rails 覚え書き①
ドットインストールのRuby on Rails 4入門を勉強しましたので覚え書きとして。
アプリケーションの作成
rails new app_name
Modelの作成
rails g model モデル名 属性名:型
modelの後にはモデル名を先頭大文字、単数形(Modelsは☓)で記述。
その後ろには属性の名前:型を記述する。stringの場合は型を省略可能。
マイグレーションファイルが作成される。
DBへの反映
rake db:migrate
サーバーの起動
rails s
config/routes.rbの編集(ルーティング)
resources :コントローラー名(先頭小文字)
ルーティングの確認
rake routes
controlles/projects_controller.rbの編集
def index @projects = モデル名.all end
@projectsは後述するViewの中から参照可能。
views/projects/index.html.erbの作成
ファイルを作成し、ファイルにHTML形式で表示するコードを記述する。
<h1>タイトル</h1> <ul> <% @projects.each do |project| %> <li><%= link_to project.title, project_path(project.id) %></li> <% end %> </ul>
rootアクセス時の設定(routes.rb)
root 'projects#index'
rootアクセス時に/projects(のindex.html)を表示する。
formの作成
projects_controller.rb
def new @project = Project.new end
new.html.erb
<%= form_for @project do |f| %> <p> <%= f.label :title %><br> <%= f.text_field :title %> <p/> <p> <%= f.submit %> <p/> <% end %>
actionで共通に行う処理
before_action :メソッド名, only: [:action名, ...] private def メソッド名 共通処理 end
before_actionは各アクションを実行する前に共通して行う処理を書く。after_actionもある。
onlyを指定しなければ、全アクションで実施する。