>  > ステアリング【ランボ】LANBO オリジナルステアリング ノーマルグリップ [ウエイク LA700/710s] [カラー]カーボン調 LS158
在庫5未満 PF-CH002 プロ用 つや出しワックス 4L:東洋化学

ステアリング【ランボ】LANBO オリジナルステアリング ノーマルグリップ [ウエイク LA700/710s] [カラー]カーボン調 LS158

Tweet

Rails

ステアリング【ランボ】LANBO オリジナルステアリング ノーマルグリップ [ウエイク ホイール4本セット LA700/710s] [カラー]カーボン調 JP店 LS158

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

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

またプログラミングを学習する上でこの命名規約は非常に重要なポイントとなります A-TECH/FINALSPEED GR-Volt アルミホイール 4本セット ムーヴ/ムーヴカスタム LA100S/LA110S 【15×4.5J 4-100 INSET45 レッドフレアブラック】。
それでは早速今回の学習に取り組んでいきましょう。

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

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

下記rails gコマンドによって生成されるファイルを参考に、命名規則を覚えていきましょう 【USA在庫あり】 56-4794 クワッドボス(QUADBOSS) FULL トップ エンド SET 564794 HD。

rails g scaffold blog title:string content:text

Modelの命名規則

モデルクラスであるBlogは、オブジェクト指向における設計書に当たります。
Blogという設計書にtitlecontentという項目を設けています。
設計書は1つなのでモデルクラス名は単数形で表現されます。
この設計書をもとに同じ構成を持つインスタンスであるblogを作成していきます 。
このblogの情報を保存しているものがblogsテーブルです。
テーブルには複数のblogの情報を保存しているため、テーブル名は複数系で表現されます。
マイグレーションファイルやマイグレーションクラス名は、テーブルを作成するものです。
そのためテーブル名と同様に複数系で表現されます USヘッドライトカバー すべての新しいトヨタFORTUNER 2015-18用のマットブラックヘッドライトカバーのトリム MATTE BLACK HEAD LAMP LIGHT COVER TRIM FOR ALL NEW TOYOTA FORTUNER 2015-18 FIT。

種類 説明
モデル名 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名に基づいています プロジェクトμ レーシング999 フロント左右セット ブレーキパッド クレスタ LX70/LX70Y F163 プロジェクトミュー プロミュー プロμ RACING999 ブレーキパット【店頭受取対応商品】。

ステアリング【ランボ】LANBO オリジナルステアリング ノーマルグリップ [ウエイク LA700/710s] [カラー]カーボン調 LS158,[#tong##]

LANBO オリジナルステアリング ノーマルグリップ [ウエイク LA700/710s] [カラー]カーボン調 LS158メーカーランボ【LANBO】メーカーコードLS158カテゴリステアリング適合代表車種※詳細な適合の事前確認はお問い合わせください。お届け納期メーカー及び商品によって異なる為、お急ぎの方はお問い合わせください。※ショッピングカート受注後でも納期確認後のキャンセルは可能です。発送送料お届けの地域によって異なります。目安送料は ¥4,320円(税込) となります。※個人のお客様への発送は追加料金が掛かる場合があります。ご自宅へ発送希望の方は予めお問い合わせください。注意事項※商品画像は装着画像や塗装済みのイメージ画像の場合がございます。カラーが異なる場合もございますのでご注意ください。※塗装が必要な外装品(エアロパーツ)は特性上下地処理が必要となります。表面の小傷等は不良ではございません。※商品の装着後(塗装後含)のキャンセルはお受け致しかねます。商品が届きましたら必ず装着前にご確認をお願い致します。商品タグLS158 LANBO オリジナルステアリング ノーマルグリップ [ウエイク LA700/710s] [カラー]カーボン調 LS158 ステアリング ランボ詳細は・・・お気軽にお問い合わせください。

そのため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コマンドを実行することで予約語を確認することができます エスペリア スーパーダウンサス(車種):エスティマ(型式):AHR20W(適用):4WD HYBRID車(エンジン型式):2AZ-FXE + モーター(年式):H18/6~24/5。

> 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