プログラミング
前提 ruby 2.1.10p492 Rails 4.2.8 active_admin_import 既存システムの修正依頼 前に他の担当者が作成した Rails アプリで、CSVインポートが上手くいかないという相談があり、アプリを確認したところ、管理サイト側が ActiveAdmin を利用していました。 そ…
前提 Rails 5.0.2 Ruby 2.4.0 なににハマったのか? Rails5 で新規アプリを作成していて、バッチ処理を作成しました。 処理は .\lib\tasks\ 配下に格納し、 .\config\application.rb に以下の設定を行いました。 class Application < Rails::Application ・・…
通常、edit 等に使用する URI に設定される id を、別のキー等で置き換えたい場合があります。 $ be rake routes Prefix Verb URI Pattern password_resets POST /password_resets(.:format) password_resets#create new_password_reset GET /password_reset…
前提 Perl は初めて触りました。 対応を求められたサーバの環境は古いです。 $ perl -v This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi QBK (急にボールが来たので) 他にヘルプできそうな人間がいなかったということで、触ったことのない P…
scope を利用していたところ、思わぬところでハマってしまいました。。 指定の条件で検索を行い、返却された結果が nil かどうかで条件分岐させようと思っていたのですが、scope を利用すると常に nil ではなく、.all の結果が返却されてきます。 scope :sea…
はじめに…SQLインジェクション発生! 現在対応中の案件で、なぜか iBtais の利用が指定されている案件があるのですが、ここでSQLインジェクションを発生させてしまったので、自戒として記載します。 iBatis の動的パラメータ受け渡し iBtaisには # と \$ が用…
ローカル環境で問題なく実行されたコードが別の環境でうまく動作しない 私の開発環境はMacなのですが、そこで以下のように記載したコードを作成しました。 require 'CSV' 自分のローカル環境での単体テストが問題なく終了したため、Linuxの実行環境で上記の…
前提 rails_admin devise 困っていたこと 一般向けサイトと管理サイトを作成し、管理サイトのみ devise でログイン処理を作成しました。 プロジェクト自体の root_path は一般向けサイトを指定したのですが、そうすると、管理サイトからログアウトした際に r…
前提 Rails 4系 haml 4.0系 どういう場面で使うか 入力画面で複数チェックボックスやリストボックスを表示するのは以下のようにかけます。(例としてリストボックス) = m.select :answer, [['ア', 'ア'], ['イ', 'イ'], ['ウ', 'ウ'], ['エ', 'エ']], {}, { m…
rails_admin を導入してカスタマイズ rails アプリケーションを作成していて、管理サイトがほしい、と言われることが結構あります。 あんまりこだわりがないお客様の場合、rails_admin を導入することが多いです。 rails で良く利用されている管理画面の gem…
前提 導入gem simple_form haml 普通の書き方だと、ボタン名が value の値になってしまう 通常、submit ボタンは以下のように記載すると思います。 = f.button :submit, 'ボタン名' { name: "#{f.object_name}[completed]", value: '1', class: 'btn btn-pri…
前提 rails 4系 simple_form 3.2.1 bootstrap-sass 3.3.7 そのままだと(非bootstrap になる) 通常、collection_selectは以下のように記載しています。 = f.collection_select :option_id, OptionMaster.all, :id, :option_name, { prompt: true, class: 'for…
ちょっと知らなかったので、小ネタですがご紹介。 pry を利用している場合、 ソースコード中に binding.pry と記載することで、記載した場所でデバッグが可能です。 これをループ中に利用し、どのように値が変わっていくかをチェックすることがあるのではな…
例として、option_mastersというテーブルが存在していた場合 # # Table name: option_masters # # id :integer not null, primary key # option_name :string # option1 :string # option2 :string # option3 :string # option4 :string # option5 :string #…
ログイン認証チェックを全画面に対応させる ./app/controllers/application_controller.rb に以下の様な形で認証チェックを入れます。 # ./app/controllers/application_controller.rb class ApplicationController < ActionController::Base before_action …
each するときに、ループ回数を利用したい C言語とかで for (i=0; i >10; i++) { ... } とかやると思いますが、このループ変数 i を利用したい時がありますよね。 ruby だとどうするのがいいのか、わかっていなかったので調べてみました。 結果、rubyには便…
当たり前の話なのかもしれませんが、rails アプリで enumを使用した際にハマったので、備忘として記載します。 前提 enum_helpをインストールしています (試していませんが、enum_helpを導入していないと、そもそもviewでうまく呼び出せないとか) 参考 : Act…
なんで更新? 利用しているPCは1年半くらい利用しており、ごちゃごちゃしてきていました。 今回、新しいWebサイト開発に着手するに当たり、環境を整理したくなりました。 前提 CUIアプリケーションはhomebrewで管理しています。 (GUIアプリケーションはhomebr…
一年くらい前に、railsを利用したとある業務アプリケーションの開発において、テンプレートエンジンを比較してhamlを導入しました。 その際に候補として挙がったのが、hamlとslimでした。 いろいろ比較して結果hamlを導入することに決定し、その業務アプリケ…