再帰的に条件判定を行うrejectが欲しくなりました。
こういう動きです。
1 2 3 4 5 6 7 8 |
|
かなり便利そうです。
Read on →再帰的に条件判定を行うrejectが欲しくなりました。
こういう動きです。
1 2 3 4 5 6 7 8 |
|
かなり便利そうです。
Read on →任意の条件でnested_attribute_forの対象の保存処理を走らせる方法です
ファイルのアップロード用のモデルを作っていてActionDispatch::Http::UploadedFile
を一旦attr_accessorのアクセサで受けたあとcallbackでファイル名やファイルサイズをmodelクラスの該当のカラムに設定するという処理を書いておりました。
ファイルは可変にアップロードしたかったのでこのモデルの親モデルから参照するようにして、nested_attribute_forで親モデル更新時に一緒に更新するようにします。
1 2 3 4 5 |
|
1 2 3 |
|
neste_formは可変なサイズの子要素を動的に追加できるGemです。
いつも大変お世話になっておりますが、今回の案件で追加する先を指定したエレメントの下ではなく上に追加しなければいけなくなり対応しました。
Read on →一つ前に携わったプロジェクトではサブシステムがたくさんあり、それぞれがrailsで構築されていて共通処理やmodelはrails engineにあつめられ各システムで参照しておりました。
今までgemのコードリーディングをする時にしか意識していなかったrails engineですが(deviseとかとか)、結構便利だということを今更ながら実感し、最近は共有処理をengineに書き出してそれを参照するようにしています。
クックパッドさんでも共通部分をengineに集めているようです。
新規サービスの管理画面を短期間で見栄え良く実装する
ドリコムさんでは複数のengineを組み合わせてシステムを作っているようです。
Mountable Engine だらけの Rails アプリ開発
普段はよくbootstrap-datepickerを使うのですが、 今回の案件では時刻まで絞り込みたいというお話だったのでdatetimepickerを導入してみました。
こちらを使います。かなり高機能な上に日本語化まで対応できる優れもの。
Eonasdan/bootstrap-datetimepicker
デモを見るだけでもワクワクしますね。
入れ方もたくさん用意されていていいですね。
今回もrails-assetsで導入します。
管理画面を作るにあたってbootstrapだけで1から作るのもしんどかったので、フリーのbootstrap用テンプレートbootswatchを使って管理画面を作ってみたいと思います。
導入には以下4パターンがあるかと思います。
今回はrails-assetsで導入してみました。
Read on →IE8も推奨ブラウザに含めるプロジェクトに関わることになったのでrails-assetsを使ってIE8に対応していきたいと思います。
やることとしては以下の感じですかね。
テンプレートエンジンはslimを使います。
Read on →作成したのはだいぶ前ですが、先日昔お世話になった人からselect-narrowing-downを使いたいんだけどという有難い言葉をいただき、そういえば作ったなぁと思い見返してみました。
デモはこんな感じです。
Read on →嫁のホワイトデーのお返しがようやく届きました。
かわいいマウスパッドというリクエストでしたが、探したけどかわいいマウスパッドがあまりなくどうしたものかと思ってましたが、 商品を自由にカスタマイズできる Zazzleというサービスがとても良さそうだったのでこれを利用しました。
オーダーが3月9日。銀行振込も同日に行いました。
振込確認したので作りますメールが12日にきて、13日に発送しますメールがきました。
アメリカからの発送なので少し日数がたった3月16日に家に届きました。
でも実際には仕事で受け取れず、受け取ったのは今日です(^^;)
こんな感じのマウスパッドが届きました! 素晴らしい出来!
何か記念品を贈りたくなったらまた利用しようと思います。