LoginSignup
1
1

More than 5 years have passed since last update.

railsのキホンvol.2(データベース操作系)

Last updated at Posted at 2019-03-16

<%%>と<%=%>

erbフィル内でrubyコードを描きたい場合は<%%>で囲む。
またrubyコードをブラウザに表示させたい場合は<%=%>とする。

@変数

基本、ビューで扱う変数はアクション内で定義する。
また、アクション内で変数を定義する場合は変数の先頭に@をつける必要がある。
例:

sample_controller.rb
def index
  @sample = "こんにちは"
end
index.heml.erb
<%= @sample %>

テーブル作成

マイグレーションファイル作成

データベースに変更を指示するためのファイル。
例:

$ rails g model Post(postsテーブル) content:text

とすることで、db/migrate/にマイグレーションファイル、app/modelsにpost.rbが作られる。

データベースに反映

$ rails db:migrate

とすることで、データベースにテーブルが作成される。
また、id, create_at, updated_atという3つのカラムも自動でテーブルに追加される。

rails コンソール

開始

$ rails console

終了

$ quit

テーブルにデータ保存(new,saveメソッド)

$ rails console
> post = Post.new(content: "Hello World")
> post.save

とすることで、contentが「Hello world」であるPostインスタンスを作成し、
Postインスタンスをpostsテーブルに保存できる。

テーブルからデータを取り出す

$ rails console
> posts = Post.all

とすることで,postsテーブルに保存されている全てのデータを配列で取得できる。

また

$ rails console
> Post.all[0].content

とすることでpostsテーブルの一つ目のデータからcontent部分だけを取り出すことができる。

共通のレイアウトをまとめる

「views/layouts/application.html.erb」
に共通のHTML(header,footerなど)を書いておくことができる。
各viewファイルは、application.html.erbの<%= yield %>に代入され、application.html.erbの一部として表示される。

link_toメソッド

application.html.erb
<%= link_to("表示する文字","URL") %>

とすることで、aタグを生成できる。
またlink_toはrubyコードのため、<%%>が必要となる。

続き
https://qiita.com/jonnyjonnyj1397/items/78aca1da8aac9d260b83

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1