技術-RubyonRails
以前に作っておいたshampersというアプリを最近いじってます。 google analytics導入 独自ドメインにした このあたりは意外と需要ありそうな予感なので、記事にしたい。 非常に粗雑な作りですが、いまの自分だとともかくリリースしちゃえ、というスタイルが…
4パラメータ コントローラのアクションでは、ユーザーから送信されたデータやその他のパラメータにアクセスして何か作業を行なうのが普通です。Railsに限らず、一般にWebアプリケーションでは2種類のパラメータを扱うことができます。1番目は、URLの一部とし…
フォームオブジェクトを書く理由、それはすなわち fatになるcontrollerをスリムにするためである。 controllerには,searchメソッドなどを書きがちで、どんどん肥大化する傾向にある def search @hoge = Hoge.where(id: XXX) if id.present? @hoge = @hoge.wh…
2.2.1 Action Viewを出力する render "edit" or render :edit はedit.html.erbなどのテンプレートの呼び出しを行う layoutの指定 class ApplicationController < ActionController::Base layout "main" #... end などの方法で設定が可能。 個々のレイアウト…
tとl I18n.t I18n.l Time.now は、 translate # 訳文を参照する localize # DateオブジェクトやTimeオブジェクトを現地のフォーマットに変換する の意味 遅延読み込み I18のバックエンドは、訳文が初めて参照されるときに遅延読み込みを行います。これにより…
さてさて、Active Record クエリインターフェイスを読んで行きます。 あ、これ知らなかったなーなんていうことをまとめておきます。 .first(3) とすると3つとれる。 なんだってー バッチ プログラムの一連の流れ あらかじめ決めておいた処理のまとまりのよ…
自身が他のテーブルをたどるキーを所持している場合は、belongs_to 自身が他のテーブルからたどるキーで示されている場合は、has_one belongs_to class Book < ApplicationRecord belongs_to :author end と書くとすると Bookテーブルが、author_idをカラム…
Active Record まわり 2.1 acceptance チェックボックス専用のバリデーション 複数個だとどうなるだろ? 2.2 validates_associated アソシエーションを張っているものを一緒にバリデーションしてくれる便利くん validates_associatedは関連付けの両側のオブ…
RubyonRailsにおける new と buildの違いについてまとめておきます。 結論から言うと、同じです。 環境 筆者が試した、またこの記事を書いた環境はこちらです。 $ rails -v Rails 5.1.3 newとbuild 基本的な使い方として、 以下のような例があると思います。…
controllerの内にて以下のようにインスタンス変数を扱っているとき、 テストでインスタンス変数を呼び出したいときがある。 def create @shampoo = Shampoo.new(shampoo_params) if @shampoo.save ... end のように扱っていたインスタンス変数の@shampooをテ…
Ruby on Railsでは、form_withやform_forタグの中でパラメータをユーザが直接フォームから入力させないまま、値を受け渡したい時に使用するものとして hidden_fieldとhidden_field_tag があります。 controller で保持している user_id を次のアクションに渡…
Ruby on RailsのTutorialで使用されている、update_columns。 そして似たような処理に見える update_attributesがあります。 この二つの違いについて調べてみたことをまとめます。 検索するとqiitaの以下の記事がでてきますね。 どうもこちらの記事によると…
最初はこうするよっていうRuby on Railsでプロジェクトを作成する際の流れを書いておきます。 基本的な流れ Railsでnewだ! Rails newで新規プロジェクトを作成する。 名前は渾身の名前をつけてあげよう。 git関連 gitでソースコードを管理します。 - git in…
werkerを使用していて、RSpecファイルで落ちたのでその修正方法を。 # Gemfile gem 'rubocop-rspec' gemをインストールします。 # .rubocop.yml require: rubocop-rspec ymlファイルで読み込みます。 ファイルの頭でいいと思います。 Rails newした後Rubocop…
Rails Tutorial終了後、validatorクラスを試してみた記録 ファイル名やコード内容はRails Tutorialで使ったものを参考にしてください。 validatorクラスを作ってみた。 基本的な考えは、railsの仕様にないvalidationを作る際に用いるものです。 カスタムバリ…
Sprockets::FileNotFound at / couldn't find file 'action_cable' with type 'application/javascript'の対処
Sprockets::FileNotFound at / couldn’t find file ‘action_cable’ with type ‘application/javascript’ 参考ページの解答 Just delete cable.js in /app/assets/javascripts/ and that should fix the problem. こちらがいっているのは、/app/assets/javasc…
Ruby on Railsで、RSpec導入にあたって、 NoMethodError: undefined method use_transactional_fixtures=' for や、 bundler: failed to load command: rspec もしくは bundler: failed to load command: rspec NameError: uninitialized constant FactoryGi…
RubyやRuby on Railsを勉強していると必ず出会うであろう、ロケットハッシュについて書こうと思います。 三( ε:) _(┐「ε:)_ 僕のハッシュロケットのイメージは上記の通りです。 ロケットハッシュって名前がかわいいですね。 ロケットハッシュとは こいつです…
Ruby on Railsにて、検索フォームを使用した際に、受け渡す値にvalidationを加えたい時、ありますよね。 form_forやform_tagを使用した際のクエリ,パラメータにvalidationを加える方法を書きます。 Formオブジェクトというデザインパターンのひとつです。 Ra…
ついにrailsの勉強にしっかりと身を乗り出しました。 遅いって? 世の中には遅いなんてことはないんだぜ!!毎週2章ずつ進めて、5月末までに完了します。 それと並行して、webアプリケーションの作成します。これは目標です。 学びのメモ -m などの名前 フラ…
へっぽこエンジニアです。 railsについて結構いろいろ教えてもらったので忘れないようにメモ フレームを作る yieldはいろいろつけられる rake db rake db:rollback rake db:migrateclass CreateUsers < ActiveRecord::Migration[5.0] def change create_tabl…