Add and remove nested model fields dynamically through JavaScript using either Prototype or jQuery.
serializeはRubyオブジェクトをそのままDBに格納できる機能です。 非常に便利な機能なので、現在進めている案件で、この機能を多用しているのですが、結構使いどころが難しいことがわかってきたのでまとめてみます。 例えば、次のようにして使います。 class User < ActiveRecord::Base serialize :hobbies, Array end user = User.new user.name = 'kusakari' user.hobbies = ["baseball", "football"] user.save user = User.find(1) p user.hobbies # ["baseball", "football"] なぜ使いどころが難しいと思うか挙げてみます。 親オブジェクトと保存のタイミングが常に同じになる 例えば hobbies テ
はじめに もりやまです。 先月の震災の日の記事以来となってしまいました。まずは被災されたみなさまに、心からお見舞い申し上げます。 弊社ではだにーが宮城県出身なのですが、ご家族には大事なかったようで一安心です。 昨夜も大きな余震があってまだまだ落ち着かないですが、みんなでまた再建しましょう! さて今回は、導入されたのは Rails 2.3 なのでもう目新しくもないですが、has_many :through で多対多に関連付けされたモデルを、Nested Object Forms を使って編集する方法がようやく理解できたのでまとめてみました。 そもそも Nested Object Forms って何? あるモデルを編集するためのフォームの中に、そのモデルと has_many 等で関連付けされた別のモデルを合わせて編集できるようにするための機能です。 これを自力でやろうとすると、 関連付けされた
fields_for、accepts_nested_attributes_forを使って、has_manyな関連先をまとめてINSERTする方法。ソースはgithubに上げておいた。ちなみにRails 3.0.8。 Post has_many Tags through Taggingsというモデルがあったとする。 とりあえずscaffoldはこんな感じ。Taggingだけは画面が要らないのでmodelだけ。 $ rails g scaffold posts title:string text:text $ rails g scaffold tags name:string $ rails g model tagging post:references tag:references $ rake db:migrate コードの修正で重要なのは次の2点。 app/models/post.rb
2010年03月18日21:12 カテゴリRubyOnRails Railsでネストしたモデルのformを使う: fields_for, accepts_nested_attributes_for 今日も、あれどうやるんだっけ? となってしまい、いつも忘れてしまうので、書いとこ。 Railsでは form_for ビューヘルパーを使用すれば、特定のモデルのHTMLフォーム要素の生成と、POSTされたデータからモデルを生成する処理が非常に楽になります。 def create_member m = Member.create( :email => params[:email], :job => params[:job], :sex => params[:sex]) end こんな処理が、 def create_member m = Member.create(params[:member])
Railsで複数モデルを扱う巨大フォームを作るときって皆さんどうしてますか?会員の属性、プロフィール管理周りで良く発生しますね。標準だとモデル単位のエラーだったり、関連モデルはエラーの有無しか拾えなかったり。 id:ursmさんのBLOGで良さげなプラグインが紹介されていたのですが「複数のモデルに跨がった巨大なフォームには散々泣かされましたが、ActivePresenter を使えば楽になれそうな気がします。使ってみます。」で終わっていたのでrails-tokyoのIRCで後日談を聞いてみました。そしたら「今ガンガン使ってて結構幸せです」とのことですので私も使ってみようと思います。使う場面としてはアクション一つでモデル複数を扱うような場合、ですね。 http://d.hatena.ne.jp/ursm/20081006/1223309255 複数の ActiveRecord オブジェクトを
2008/08/18 Rails で、一つのフォームで複数のモデルを扱う 先日のRails講習で、いいことを学んだので忘れないうちにメモです・・。 Rails では、基本、一つの Form に一つの Model なのですが、 fields_for というヘルパーを使用することで複数のモデルを扱えます。 一対一のモデルを一度に更新する場合などに使えそうです。 <% form_for @person, :url => { :action => "update" } do |person_form| %> First name: <%= person_form.text_field :first_name %> Last name : <%= person_form.text_field :last_name %> <% fields_for @person.permission do |per
Ruby on Railsの最新バージョン、Ruby on Rails 3.1.0が日本時間だと昨日(2011年8月31日)、リリースされました。今日(9月1日、米国時間だと8月31日)になってから公式ブログにもアナウンスが出ました。 英語の情報源になってしまいますが、読むべきWebページを列挙しておきましょう。 公式ブログのリリースノート:変更点が簡潔にまとまっています RailsGuidesのRails3.1 リリースノート:ズラズラズラっと解説+コード+箇条書きで変更点がまとまっています。RailsGuidesのほかの項目同様に力作です RailsGuidesのAsset Pipelineの解説:Asset Pipelineについていちばん良くまとまっています このブログでも何度か取り上げていますが、今回のバージョンアップは非常に大きなものです。すでにRails 3.0系でメジャーバ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く