>  > RSR ダウンサス フロントのみ ソリオバンディット MA15S 24/6~ FF 1200 NA アイドリングストップ
【フジツボ】【FUJITSUBO】【マフラー】【エキゾースト】【Re:FACE】【リフェイス】【インサイト】【型式 DAA-ZE2】年式 H21.02~ 1.3 2WD

RSR ダウンサス フロントのみ ソリオバンディット MA15S 24/6~ FF 1200 NA アイドリングストップ

Tweet

Rails

RSR ダウンサス フロントのみ ソリオバンディット QP11 MA15S 24/6~ FF 1200 NA アイドリングストップ 全商品

今回はRuby on Railsにおける命名規約について簡単に学んでいきましょう。
みなさんの学習の手助けとなれば幸いです。

Railsの基本理念の1つ CoC (Convention over Configuration, 設定より規約) の規約部分です。
初学の段階ではこのポイントを掴むことで学習がより効率的になります。

またプログラミングを学習する上でこの命名規約は非常に重要なポイントとなります DID ダイドー VXシリーズチェーン 520VX2 シルバー 【カシメ(ZJ)ジョイント付属】 リンク数:128。
それでは早速今回の学習に取り組んでいきましょう。

Ruby on Railsを用いた開発では、コントローラー名は複数系、モデル名は単数形で頭文字が大文字と、様々な命名規則があります。

この規則に基づいてファイルやクラス間の連携が機能しているため、命名規則を守って開発する必要があります。

下記rails gコマンドによって生成されるファイルを参考に、命名規則を覚えていきましょう 205/65R16 95Q BRIDGESTONE ブリヂストン BLIZZAK VRX2 ブリザック VRX2 SMACK BASALT スマック バサルト スタッドレスタイヤホイール4本セット。

rails g scaffold blog title:string content:text

Modelの命名規則

モデルクラスであるBlogは、オブジェクト指向における設計書に当たります。
Blogという設計書にtitlecontentという項目を設けています。
設計書は1つなのでモデルクラス名は単数形で表現されます。
この設計書をもとに同じ構成を持つインスタンスであるblogを作成していきます 。
このblogの情報を保存しているものがblogsテーブルです。
テーブルには複数のblogの情報を保存しているため、テーブル名は複数系で表現されます。
マイグレーションファイルやマイグレーションクラス名は、テーブルを作成するものです。
そのためテーブル名と同様に複数系で表現されます カヤバ New SR スペシャル 1台分 ショック クラウン RS110【NSG4799B×2+NSG4793×2】KYB New SR SPECIAL ショックアブソーバー サスペンションキット【店頭受取対応商品】。

種類 説明
モデル名 blog 単数系
ファイル名 blog.rb 単数系
モデルクラス名 Blog 単数系、頭文字は大文字
テーブル名 blogs 複数系
マイグレーションファイル名 xxxxxxxxxxxxxx_create_blogs.rb 複数系
マイグレーションクラス名 CreateUsers 複数系、頭文字は大文字

(blog.rb)

class Blog < ApplicationRecord
end



(xxxxxxxxxxxxxx_create_blogs.rb)

class CreateBlogs < ActiveRecord::Migration[5.1]
 def change
 create_table :blogs do |t|
 t.string :title
 t.text :content
 t.timestamps
 end
 end
end



Viewの命名規則

Viewのファルダ名はフォルダ配下に複数のViewファイルを持つため、複数形で表現されます。

種類 説明
フォルダ名 blogs 複数系

Controllerの命名規則

Controllerは複数のactionを持つため、複数系で表現されます。

種類 説明
コントローラ名 blogs 複数系
ファイル名 blogs_controller.rb 複数系
コントローラクラス名 BlogsController 複数系、頭文字は大文字

(blogs_controller.rb)

class BlogsController < ApplicationController
 before_action :set_blog, only: [:show, :edit, :update, :destroy]
<!-- 省略 -->
end



Routingの命名規則

Routingのリソース名はController名に基づいています Z34 メーターカバー / メーターフード【キュリオスモデルス】Z34 メーターリング シルバー。

RSR ダウンサス フロントのみ ソリオバンディット MA15S 24/6~ FF 1200 NA アイドリングストップ

【送料無料】 195/50R16 16インチ LEHRMEISTER レアマイスター ディチョット 6.5J 6.50-16 SAFFIRO サフィーロ SF5000(限定) サマータイヤ ホイール4本セット, 【アイシス アクティブモータリングスタイル】ISIS PLATANA ANM/ZNM10/15W MC前 LUXEST フロントハーフスポイラー 未塗装品, RS-R Basic☆i ベーシックi【ベーシックアイ】 トヨタ ノア ZRR80G, 18インチアクセラBY系 ハイブリッドWEDS ヴェルヴァ スポルト ディープメタル 7.0Jx18ADVAN ネオバAD08R 215/45R18, ■BRIDE スーパーシートレール ROタイプ 右側 ホンダ アコードワゴン CB9、CE1、CF2 89/9-97/9【H101RO】【smtb-k】【kb】 トヨタ/タクティー タイミングベルトセット リア V9152-X007/V9153-N010/V9153-N005 日産 アベニール SW10 CD20T 1993年01月~1995年11月 2000cc, PRODIGY プロディジイ リアサスペンション S-21 スポーツショック(ツイン) チューブボディ:チタニウム色 ボタン:ブラック TIGRA 125 TIGRA 150, 【イベント開催中!】 NEX Performance ネックスパフォーマンス ラジエーター関連部品 シリコンラジエターホースキット カラー:ブラック YZF-R6, オグラクラッチ 309メタルシングル スタンダードタイプ ダンパー付 シビック EP3 K20A 送料無料, 【送料無料】KYB (カヤバ) NEW SR SPECIAL 1台分セット フロント品番:NST5065R/NST5065L*各1本,リア品番:NST5066R/NST5066L*各1本 スバル レガシィ BF5A/B-44E 1989/02~1991/05 KYB [自動車 サスペンション ] スタッドレスタイヤ ダンロップ ウインターマックス02 WM02 175/70R14 84Q & キャロウィン 5.5-14 タイヤホイール4本セット 175/70-14 DUNLOP WINTER MAXX 02 WM02

RSR ダウンサス フロントのみ ソリオバンディット MA15S 24/6~ FF 1200 NA アイドリングストップ:zoom/ズーム ダウンサス スーパーダウンフォースC ランドクルーザー80 ディーゼル HZJ81V 【送料無料】 ピットワーク バッテリー 超高性能 Xシリーズ マツダ スペクトロン L-SS48VF 用 AYBXL-44B19-01 車用 車 国産車 カーバッテリー バッテリー交換 PITWORK 自動車用バッテリー

RSR ダウンサス フロントのみ ソリオバンディット MA15S 24/6~ FF 1200 NA アイドリングストップ.ピレリ P ZERO ピーゼロ NERO ネロ GT サマータイヤ 225/50R17 WEDS ウェッズ Leonis GREILA α レオニス グレイラ ホイールセット 4本 17インチ 17 X 6.5 +53 5穴 114.3 NTK O2センサー アコード CF5/CL3用

サイドバイザー クロスビー専用 MN71S【ドアバイザー サンバイザー】高品質純正規格【】日除け 雨除け フロント リア 4枚セット 金具 留め具 新品 スモーク ZOOM ダウンサス 1台分セット [ホンダ] インスパイア UA4 J25A H10/10~H15/6 2WD 2.5L

そのためController名と同じく複数系で表現されます。

種類 説明
リソース名 blogs 複数系

(config/routes.rb)

Rails.application.routes.draw do
 resources :blogs
end



つけてはいけないモデル名

予約語

RubyRuby on Railsの仕様としてあらかじめ定義されている定数やクラス名があります。

これらを予約語といい、モデル名に使用することができません。

同名の定数やクラス名を作成するとソースコードを正しく解釈できなくなってしまうためです。

rails gでモデル名に予約語を指定すると下記のようなエラーが発生します。

$ rails g scaffold object title:string content:text 
Running via Spring preloader in process 15518
 invoke active_record
The name 'Object' is either already used in your application or reserved by Ruby on Rails. Please choose an alternative and run this generator again.

予約語の確認方法

次のようにrails cコマンドを実行することで予約語を確認することができます 送料無料![品番SG43][レガリア スペーシアカスタム][H25/6-H27/6][MK32S][定員4] Regalia レガリア ネックパットセット。

> Object.constants
 => [:Object, :Module, :Class, :BasicObject, :Kernel, :NilClass, :NIL, :Data, :TrueClass, :TRUE, :FalseClass, :FALSE, :Encoding, :Comparable, :Enumerable, :String, :Symbol, :Exception,
 (省略)
 :Fcntl, :Selenium, :Zip, :Find, :WebConsole, :Achieve, :Bindex, :Erubi, :PrettyPrint, :PP, :IPAddr, :OpenURI, :APP_PATH, :Exception2MessageMapper, :IRB, :RubyToken, :RubyLex, :RUBYGEMS_ACTIVATION_MONITOR]

アプリ名

rails new アプリ名とした場合、アプリ名モデル名にすることができなくなります。

$ rails g scaffold achieve title:string content:text 
Running via Spring preloader in process 15631
 invoke active_record
The name 'Achieve' is either already used in your application or reserved by Ruby on Rails. Please choose an alternative and run this generator again.

以上で命名規約に関しての説明を終了します。
初心者の方がよくつまづき、仕組みを理解できていないところであるので、今回で理解を深めていただけましたら幸いです。

Tweet
一覧にもどる

DIVE INTO CODEのことをもっと知ってみませんか?

{yahoojp} {diveintocode.jp}
{yahoojp}jpprem01-zenjp40-wl-zd-20572