Matthewの備忘録

忘れたときはここを見ろ。何か書いてある。

2017-05-01から1ヶ月間の記事一覧

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その7

RoR

前回の続き。 matthew.hatenadiary.jp i18n 参考にしていたサイトのページではi18nについては触れられていないので書いておく。 例えば日本語化したいとき、config/locale/ja.ymlというファイルを作っておき、config/application.rbのclass application内に…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その6

RoR

さて、これまで幾つかの方法を記しておいたが、どれもアドホック、その場凌ぎの辛うじて小規模な開発で許されるような拙い方法であることは否めない。もっとRoRに相応しい洗練された美しい方法がある。その方法を用いなければ、例えば親子関係があるテーブル…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その5

RoR

実は、これまでフォーム専用クラスや特異メソッドを使ってフォーム専用の変数/属性/フィールドを用意してきたが、モデルにそれのアクセサー、必要があればそのバリデーションを書くだけで機能する。しかも、調べ切ったわけではないが、何の副作用もない*1…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その4

RoR

記しておかなくてもよいとおもったが、バリデーションは次のように書けることは記しておこう: class AddressBook < ApplicationRecord validates :address, presence: true, length: { maximum: 10, message: "区切り記号の半角空白も含めて10文字以内にし…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その3

RoR

前回まではフォーム専用の代理クラスを作っていたが、特異メソッドを加えることでモデルにない属性をフォーム入力項目にしてしまえるもう一つの方法があるので記しておく。 特異メソッド 特異メソッドについては次を参考にすればよい: Rubyist Magazine - R…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その2

RoR

前回のままでは実用的ではないので、ストロングパラメーターとバリデーション、そしてi18nについて記しておく。 参考: matthew.hatenadiary.jp ストロングパラメーター ストロングパラメーターの振る舞いについては次の記事が詳しいので見て欲しい。参考(…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その1

RoR

RoRでサイトを構築していると、DBのテーブルに存在しないか、テーブルにカラムがない項目を入力して何かさせたくなることがある。検索機能はその一つであろう。その方法は既に沢山の方によって英語や日本で紹介されている。次はその一つ: qiita.com 検索機…