Forum: Ruby on Rails How to add fields dynamically?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
36297db52e8ef932862dc9893763b898?d=identicon&s=25 Aa Sh (tetya-loshad)
on 2009-01-28 00:13
I would like have a simple interface for users to add data into
database. How to add new textareas in form, until user want it and
submit all of them at once?
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-01-28 00:46
(Received via mailing list)
Aa Sh wrote:
> I would like have a simple interface for users to add data into
> database. How to add new textareas in form, until user want it and
> submit all of them at once?

However, if you _do_ need to look these strings up in the database, you
need a
child table with a parent_id, and key and value fields!
00973881979aa0a660ffbbb2f7a907fb?d=identicon&s=25 Peter De Berdt (Guest)
on 2009-01-28 00:48
(Received via mailing list)
On 28 Jan 2009, at 00:13, Aa Sh wrote:

> I would like have a simple interface for users to add data into
> database. How to add new textareas in form, until user want it and
> submit all of them at once?

http://railscasts.com/episodes/73-complex-forms-part-1
http://railscasts.com/episodes/74-complex-forms-part-2
  ... and everything on railscasts.com basically


Best regards

Peter De Berdt
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-01-28 00:49
(Received via mailing list)
Aa Sh wrote:
> I would like have a simple interface for users to add data into
> database. How to add new textareas in form, until user want it and
> submit all of them at once?

Look up how to serialize a Hash into a :text field.

If you don't need to query a database by a field, you don't need the
full
overhead of a field type. To give your users abstract data, let them
enter keys
and values into fields that expand forever, and then AR will serialize
them.
They go in as YAML strings of your hashes.

--
   Phlip
36297db52e8ef932862dc9893763b898?d=identicon&s=25 Aa Sh (tetya-loshad)
on 2009-01-28 16:13
Peter De Berdt wrote:
> On 28 Jan 2009, at 00:13, Aa Sh wrote:
>
>> I would like have a simple interface for users to add data into
>> database. How to add new textareas in form, until user want it and
>> submit all of them at once?
>
> http://railscasts.com/episodes/73-complex-forms-part-1
> http://railscasts.com/episodes/74-complex-forms-part-2
>   ... and everything on railscasts.com basically
>
>
> Best regards
>
> Peter De Berdt

Thank you so much, it is almost exactly what I need, except I am a
novice in RoR, so I can't change the example from multi models to simple
one. I try, but have an error.

Now I have table in database with "e_key" and "comment" fields and
standard new.html.erb (built by scaffolding). So actually I have two
question:
1) How dynamically to add empty fields on page (by click button)?
2) How to collect all data from all rows and put they into database?

Thank you for your time!
D3fc5887a2f39f2e0c8989d39ce5e6f9?d=identicon&s=25 Bharat Ruparel (bruparel)
on 2009-01-28 17:31
You will need Javascript for this sort of thing as Ryan Bates points out
in his screen casts.  There are many ways to do it, e.g., RJS templates
or unobstrusive Javascript.

Next in your create action, you will have to loop through the newly
added rows to the database.

It sounds simple, but it isn't if you are a beginning Rails programmer.
You may want to get a bit more experience with Javascript/Ajax before
trying this.  However, if you must, lookup the multi-model update recipe
in Advanced Rails Recipes Book contributed by Ryan Bates and just
exclude the "one" side of "one-to-many" relationship.

Bharat
36297db52e8ef932862dc9893763b898?d=identicon&s=25 Aa Sh (tetya-loshad)
on 2009-01-28 18:02
Phlip, Peter, and Bharat,

Thank you for advises and your time!
36297db52e8ef932862dc9893763b898?d=identicon&s=25 Aa Sh (tetya-loshad)
on 2009-01-30 21:17
Aa Sh wrote:
> Phlip, Peter, and Bharat,
>
> Thank you for advises and your time!
 I did it!
This topic is locked and can not be replied to.