# Gestire 3 modelli in un form

**URL:** <https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856>\
**Category:** IT\
**Created:** [July 24, 2011, 7:55pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856 "2011-07-24T19:55:56Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![dubstep](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/cdc98d/32.png) [@dubstep](https://www.ruby-forum.com/u/dubstep)\
**Post date:** [July 24, 2011, 7:55pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/1 "2011-07-24T19:55:56Z")

</div>

Salve a tutti.

class Customer \< ActiveRecord::Base  
has\_many :deliveries

class Delivery \< ActiveRecord::Base  
has\_many :delivery\_items  
has\_many :products, :through =\> :delivery\_items  
belongs\_to :customer

class DeliveryItem \< ActiveRecord::Base  
belongs\_to :delivery  
belongs\_to :product

Creo una nuova delivery per il customer x:

= simple\_form\_for @customer do |f|  
= f.simple\_fields\_for :deliveries do |deliveries\_f|  
.block  
.column.span-12  
= deliveries\_f.association :products, :multiple =\> true,  
:selected =\> @products\_selected\_id,  
:input\_html =\> { :title =\> “-  
Select product -” }, :label =\> false  
= deliveries\_f.input :notes

In questa stessa form vorrei valorizzare il campo quantity di  
DeliveryItem in modo da creare il Delivery per il customer x al quale  
associare uno o piu’ Product e per ciascuno di questi Product indicare  
la quantita’ che e’ appunto un attributo di DeliveryItem.  
Non so se sono riuscito a spiegarmi.  
Quale soluzione potrei adottare?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [July 25, 2011, 9:26pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/2 "2011-07-25T21:26:19Z")

</div>

Credo che accepts\_nested\_attributes\_for sia quello che cerchi.

Ciao,  
Antonio B.

Il 24/07/2011 19.55, Mauro ha scritto:

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [July 25, 2011, 10:44pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/3 "2011-07-25T22:44:49Z")

</div>

2011/7/25 Antonio B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> Credo che accepts\_nested\_attributes\_for sia quello che cerchi.

Customer accepted\_nested\_attributer\_for :deliveries?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [July 26, 2011, 8:52pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/4 "2011-07-26T20:52:08Z")

</div>

On 25 July 2011 22:44, Mauro [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 2011/7/25 Antonio B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):
> 
> > Credo che accepts\_nested\_attributes\_for sia quello che cerchi.
> 
> Customer accepted\_nested\_attributer\_for :deliveries?

Se intendevi questo ce l’ho gia’ per gestire le deliveries ma a serve  
gestire l’attributo quantity di DeliveryItems

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [August 4, 2011, 11:58pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/5 "2011-08-04T23:58:13Z")

</div>

Il 28/07/2011 16.21, Mauro ha scritto:

> nessuna idea?
> 
> > belongs\_to :product  
> > = simple\_form\_for @customer do |f|  
> > = f.simple\_fields\_for :deliveries do |deliveries\_f|  
> > .block  
> > .column.span-12  
> > = deliveries\_f.association :products

Dentro al subform deliveries fai un altro subform per gestire i  
delivery\_items  
al cui interno hai i campi product e quantity.

Antonio B.

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [July 28, 2011, 4:21pm UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/6 "2011-07-28T16:21:54Z")

</div>

On 26 July 2011 20:51, Mauro [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> On 25 July 2011 22:44, Mauro [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > 2011/7/25 Antonio B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):
> > 
> > > Credo che accepts\_nested\_attributes\_for sia quello che cerchi.
> > 
> > Customer accepted\_nested\_attributer\_for :deliveries?
> 
> Se intendevi questo ce l’ho gia’ per gestire le deliveries ma a serve  
> gestire l’attributo quantity di DeliveryItems

nessuna idea?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [August 5, 2011, 9:03am UTC](https://www.ruby-forum.com/t/gestire-3-modelli-in-un-form/209856/7 "2011-08-05T09:03:08Z")

</div>

On 4 August 2011 23:58, Antonio B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> > > class DeliveryItem \< ActiveRecord::Base  
> > > al cui interno hai i campi product e quantity.  
> > > Ho trovato un ottimo spunto da:  
> > > [http://asciicasts.com/episodes/196-nested-model-form-part-1](http://asciicasts.com/episodes/196-nested-model-form-part-1)  
> > > [http://asciicasts.com/episodes/196-nested-model-form-part-2](http://asciicasts.com/episodes/196-nested-model-form-part-2)
