/ / Has_one relazioni e creazione di un nuovo record in Rails 3 - ruby-on-rails, ruby-on-rails-3, activerecord

Ha_una relazione e crea un nuovo record in Rails 3 - ruby-on-rails, ruby-on-rails-3, activerecord

Ho i seguenti modelli, Membro e Mappa, impostati come segue:

class Member < ActiveRecord::Base
...
has_one :map, :dependent => :destroy
...
class Map < ActiveRecord::Base

belongs_to :member

e i miei percorsi sono impostati con:

resources :members do
resources :maps
end

e il mio controller delle mappe è:

 def new
@map = Map.new
end

def create
@map = current_member.map.new(params[:map])

if @map.save.....

Ma quando provo a salvare una nuova mappa, ricevo un errore undefined method "new" su quella linea di creazione. Non sono sicuro del perché.

risposte:

10 per risposta № 1

Qui è una descrizione di tutti i metodi aggiunti da has_one associazione. Dovresti usare build_map per la costruzione di una nuova mappa.