単一テーブル継承はたまに使いますが、使うたびに何かしら問題が起きる気がします。 class Animal < ActiveRecord::Base end class Dog < Animal end class Cat < Animal end これらのクラスを(実際は色々と問題があるので別ファイルに分けて)実装し Anima…
世のアプリケーションでは表題のような動作をしているものが色々と存在します。 しかし、自社での開発中に上の問題が発生したのでメモとして残しておきます。 構成 https://developers.google.com/cloud-messaging/ios/start上記サイトのサンプルを元に動か…
Rails 4.2 以降は rails server コマンドで起動するサーバが localhost で立ち上がるため LAN 内の別マシンからアクセスさせたい場合は bundle exec rails s -b 0.0.0.0のようにコンフィグを設定する必要がありました。Rails 5.0 からはデフォルトのサーバが…
Android アプリケーションで cookie を管理する際、デフォルトの動作はアプリとは非同期で揮発性のメモリに展開された値を最大数分(?)程度の遅れで不揮発な領域に書き込みに行くようです。 この辺り、過去のバージョンの情報などが錯綜していて分かりにく…
コングラッチュレーション ,―==7 Congratulation! コングラッチュレーション |く ___ _> Congratulation! fll`ーU+' `''、 ー=| おめでとう・・・・・・・・! _,,..-´:|ヽー-;ー..,,_ . ,−=-, ,,..-‘≡≡:| ><´|≡::|ヽ おめでとう・・・・・・・・…
Apache のヘッダーに色々と書いたら Sinatra で書いたアプリケーションが 404 を返したり不穏な挙動を起こすようになってしまった!ドキュメントを読め!というお話。 ことの発端 社内で使う小さな問い合わせフォームを Sinatra でミニマムに実装したのです…
理由は分かりませんが、何かのタイミングで DROP DATABASE hoge;が通らなくなってしまい、次のようなエラーメッセージが表示されるようになりました。 Error dropping database (can't rmdir './hoge', errno: 66)困るので、データディレクトリを直接削除し…
ふわっとしたタイトルで申し訳ないのですが、なにぶんマシンそのものがクラッシュしてしまうため、あまり検証もできていません。実際に起こった事象の報告と、一応の解決策のみ記載しておきます。 何が起こるのか 実際に問題が起こった環境の場合 Kaspersky …
この日記を書いている人のサークルが今回もコミケに参加します。 基本情報 3日目西ホールよ13a / ProjectHL2 クロスフェード ニコニコの方が何かと便利そうなので、こちらで。 気になった方は是非お気軽にお越し下さい。
次のようなコードを Rails 4.0 系の controller に記述すると rescue_from ActiveRecord::RecordNotFound, with: :render_404 rescue_from ActionController::RoutingError, with: :render_404 rescue_from Exception, with: :render_500 内部では ActiveRec…
前振り フラグメント修飾子とは、今回の話の範囲では http://api.rubyonrails.org/classes/ActionDispatch/Http/URL.html#method-c-url_for というアドレスに含まれる「#」以降、つまり「method-c-url_for」の部分になります。そして Safari を使ってリダイ…
RMagick が内部で使用している ImageMagick には PDF を jpg などの画像に変換する機能があります。 convert test.pdf test.jpg一番簡単な使い方は上の通り。手元の環境では特に jpg が残念な画質になりますが、そのあたりはオプションで(ある程度)補完が…
今回の目標 Windows のジョブに登録したバッチ処理で「特定のディレクトリから最終更新日時が一週間以上前のファイルを削除する」という目的を達成します。 なお、この処理はやむにやまれぬ事情で作成に至ったものであり、私は PowerShell の文法を順序立て…
コングラッチュレーション ,―==7 Congratulation! コングラッチュレーション |く ___ _> Congratulation! fll`ーU+' `''、 ー=| おめでとう・・・・・・・・! _,,..-´:|ヽー-;ー..,,_ . ,−=-, ,,..-‘≡≡:| ><´|≡::|ヽ おめでとう・・・・・・・・…
おしらせ 中の人が主催しているサークル ProjectHL2 にて2014年末に開催されるコミックマーケットで新作を頒布します。 配置は3日目東、ル02bになります。 全5曲入り、「巡音ルカ」によるボーカル曲集で頒布価格は500円を予定しております。 クロスフェード …
大きな開発が一段落したので環境の更新をしておこう、と思い年単位ぶりくらいに brew update brew upgrade rbenv ruby-buildを叩き、せっかくだから記事執筆時にリリースされたばかりの最新版 Ruby 2.1.5 をインストールしようと rbenv install 2.1.5を実行…
表題の件ですが、案外はまってしまったので備忘録。 前提 以下の環境で確認 Rails 4.1.6 Ruby 2.0.0-p247 メーラーの準備 元々のコードがこうだったとして class NotifyMailer < ActionMailer::Base def customer(mail_object, document) @mail_object = mai…
定期的に引っかかるので備忘録として。検証には Rails 4.0.8 及び Mysql 5.6.10 を使用しました。Rails から MySQL を使う際、何も考えずにデフォルトのまま設定していくと、大体の場合小文字 a と大文字 A が区別されないデータベースが作成されます。具体…
html から簡単に PDF が作れる便利なプラグインですが、割と面倒な行程が必要だったのでメモ。Rails 4.1 で確認しました。 インストール Gemfile で以下のように記述します。 gem 'wkhtmltopdf-binary' gem 'wicked_pdf' が、環境によってはこれでは動作しま…
次のコードは正しく動作しますが、サーバやブラウザの設定によってはデータを更新してもキャッシュが読まれてしまいます。 $.ajax({ type: 'GET', dataType: 'json', url: 'hoge.json', success: function(data) { concole.log(data); }); これを避けるには …
例えばユーザからの問い合わせを受け付けるメールフォームなど、特にデータベースに値を保存したりする必要はないが ActiveModel の機能は使いたいケースで Rails 4 では ActiveModel::Model をインクルードする事で簡単に処理できます。 class MailForm inc…
自分用に攻略の手順メモ チート屋を解放する 第1章あたりで出来たはずなのでさくっと解放。今回、これのおかげで色々な手間が省けて非常にストレスなく稼げるようになっている。 レベルを稼ぎつつ店レベルを上げ、邪シンボルを集める チート屋で敵レベルを調…
Rails 4 では 404 系のエラー発生時にデフォルトで public/404.html を表示してくれるのですが、ヘッダーやフッターはエラーページでもそのまま利用したいケースなどでは自分で表示を制御する必要があります。 以下でその方法について記述します。 routes.rb…
一定以上のサイズの画像が自動的に最大幅以内に収まるように jQuery UI で制御します。 CSS の準備 まずはスタイルシートにサムネイル用のクラスを記述します。ここでは最大幅は 640 px とし、分かりやすいよう枠の表示とマウスカーソルの変更も行いました。…
コングラッチュレーション ,―==7 Congratulation! コングラッチュレーション |く ___ _> Congratulation! fll`ーU+' `''、 ー=| おめでとう・・・・・・・・! _,,..-´:|ヽー-;ー..,,_ . ,−=-, ,,..-‘≡≡:| ><´|≡::|ヽ おめでとう・・・・・・・・…
表題の件について datepicker の導入を例に説明します。 まずは Gemfile を更新。 gem 'jauery-rails' この下に gem 'jauery-ui-rails' を追加します。終わったら bundle install をお忘れなく。 次に app/assets/javascripts/application.js を更新。 // re…
jQuery 1.9 を用いて textarea の現在のカーソル位置にテキストを挿入します。動作は IE 6 〜 9, Chrome, FireFox の最新版で確認。 function insertAtCaret(target, str) { var obj = $(target); obj.focus(); if(navigator.userAgent.match(/MSIE/)) { var…
acts_as_taggable_on は便利なプラグインですが、デフォルトでは「tag1,tag2,tag3」のようにタグを半角カンマで区切った入力を行うため、一般のユーザ向けとは言えません。そこで jQuery を使って入力補助を行います。Rails 4.0 + Ruby 2.0 で検証しました。…
表題のとおりのサンプルプロジェクトを作成します。まずはプロジェクトを新規作成します。 rails new sample_uploadscaffold でアップロード機能を作成、この辺はいつもどおり。 bundle exec rails g scaffold attachments title:string path:text何かと不便…
表題の件ですが Rails アプリの Gemfile で次のような指定をしていたところ、更新時にエラーが発生しました。 gem 'rubyzip', :require => 'zip/zip' エラーの原因は rubyzip gem のバージョンが 1.0.0 になった際にrequire 以降を記述する必要が無くなった…