I ended up with a rather contrived example after looking at too many code samples. I really just want "Hello world."
For survey, there are n number of surveys. Surveys have n number of survey questions. When a specific survey is selected, the questions for that survey show up as options in the second select. Like I said, it's a bit contrived. Thanks for the help, Paul --- On Thu, 8/20/09, Sergio Cambra .:: entreCables S.L. ::. <[email protected]> wrote: > From: Sergio Cambra .:: entreCables S.L. ::. <[email protected]> > Subject: Re: Yet another question on dynamic selects > To: [email protected] > Date: Thursday, August 20, 2009, 12:49 AM > > On Jueves, 20 de Agosto de 2009 03:48:04 Paul Hamann > escribió: > > Thanks again for all your help. Sadly, I'm still > missing something. [BTW, > > there's a search_sql in the thread example, but not in > the wiki example?] > > > > Here's the code: > > > > ============ schema =============================== > > > > create_table "survey_questions", :force => > true do |t| > > t.integer > "survey_id", :limit => 11 > > t.text > "question_text" > > t.datetime "created_at" > > t.datetime "updated_at" > > end > > > > create_table "surveys", :force => > true do |t| > > > t.string "name" > > t.datetime "created_at" > > t.datetime "updated_at" > > end > > > > ============ Model: survey.rb ========= > > > > class Survey < ActiveRecord::Base > > > > has_many :survey_questions > > > > def to_tabel > > "#{name}" > > end > > end > > > > ============Model: survey_question.rb ==== > > > > class SurveyQuestion < ActiveRecord::Base > > > > belongs_to :survey > > > > def to_label > > "#{question_text}" > > end > > end > > > > ================= survey_helper.rb ================== > > > > module SurveyHelper > > > > def > options_for_association_conditions(association) > > if association.name == > :survey_question > > > {'survey_questions.survey_id' => > @record.survey_id} > > else > > super > > end > > end > > > > end > > > > ============= survey_controller.rb > ===================== > > > > class SurveyController < ApplicationController > > > > layout "default" > > active_scaffold :survey > > > > active_scaffold do |config| > > config.columns[:name].form_ui > = :select > > config.columns[:name].options > = { :update_column => ':survey_question' > > } config.columns['question_text'].form_ui = :select > > end > > end > > form_ui select automatically fills the options when column > is an association > (neither name nor question_text are associations). You > can't set question_text > form_ui from SurveyController because that column belongs > to SurveyQuestion > model, you should do it in SurveyQuestionsController. > > I don't understand what you want to get. What options > should be shown for > name? > > > > > > ========================================================== > > > > --- On Wed, 8/19/09, Kerry Foley <[email protected]> > wrote: > > > From: Kerry Foley <[email protected]> > > > Subject: Re: Yet another question on dynamic > selects > > > To: [email protected] > > > Date: Wednesday, August 19, 2009, 5:32 PM > > > > > > It sounds like your column name is incorrect. You > didn't > > > paste you're > > > code so I can't say for sure. You should be doing > something > > > like > > > config.columns[:project_type].form_ui = :select > > > #belongs_to > > > or > > > config.columns[:regions].form_ui = > > > > > > :select #has_many > > > > > > it shouldn't be "_id" - it's the association > name, not the > > > column name. > > > > > > There are examples on the wiki e.g Getting > Started; > > > http://wiki.github.com/activescaffold/active_scaffold > > > > > > You don't need to build the select. > > > > > > I think there's a more or less complete set of > controller, > > > model and > > > helper code for what you are trying to do in the > thread > > > previously sent. > > > > > > http://groups.google.com/group/activescaffold/browse_thread/thread/2ae130 > > >edb1d0e2d2 > > > > > > > > > Regards, > > > Kerry > > > > > > Me wrote: > > > > Bare with me here. I'm a little slow. > So I tried > > > > > > the code, and I get: > > > > You have a nil object when you didn't expect > it! > > > > The error occurred while evaluating > nil.form_ui= > > > > > > > > Is there enough smarts built-in to populate > the select > > > > > > boxes? Or do I > > > > > > > need something like: > > > > > > > > a= Author.find(:all).collect { |a| > a.name } > > > > > > > > If that kind of code is required, do I put > that in the > > > > > > helper form > > > > > > > override? Any chance I can see one > complete > > > > > > example that works? I've > > > > > > > been banging my head on this for a > while. When I > > > > > > Google, I just come > > > > > > > across more people that have been banging > there heads > > > > > > on this. > > > > > > > Thanks! Paul > > > > > > > > On Aug 19, 1:58 pm, Kerry Foley <[email protected]> > > > > > > wrote: > > > > > > > > > > > >> http://groups.google.com/group/activescaffold/browse_thread/thread/2a. > > > >>.. > > > >> > > > >> Regards, > > > >> Kerry > > > >> > > > >> Me wrote: > > > >> > > > >> > > > >>> Greetings! First post. > > > >>> > > > >>> I've been greping the web for an AS > example of > > > > > > populating a parent > > > > > > >>> select box, and then dynamically > changing a > > > > > > child select box through > > > > > > >>> an "onchange" event. I've seen > the > > > > > > observer approach, but not with > > > > > > >>> AS. Is there support for such > a thing? > > > >>> > > > >>> I found this thread where this same > question > > > > > > was asked. > > > > > > >>> > > > >>> http://www.mail-archive.com/[email protected]/msg00108. > > > >>>... > > > >>> The poor guy got a rather prickly > > > > > > response. He eventually posted his > > > > > > >>> solution in the last msg of the > thread. > > > > > > Unfortunately, I can't get > > > > > > >>> that solution to work. The > example [in > > > > > > plain English] was, "Surveys > > > > > > >>> have many survey_questions and > surveys > > > > > > have_many survey_options." If > > > > > > >>> options are meant to be answers to > questions, > > > > > > then it should be > > > > > > >>> "Surveys have many questions. > Questions > > > > > > have many options [multiple > > > > > > >>> choice]." That > would be three > > > > > > levels. I tried looking at the > > > > > > >>> survey_options table as some type of > join with > > > > > > both foreign keys > > > > > > >>> [survey_id, > survey_question_id]. If that > > > > > > were the case, then survey > > > > > > >>> "has many questions through > > > > > > survey_options." That wasn't listed in > > > > > > >>> the example. Clearly, I'm > confused > > > > > > somewhere. > > > > > > >>> > > > >>> I would appreciate it if someone > could explain > > > > > > the example referenced > > > > > > >>> in the last message of the thread > linked to > > > > > > above. Alternatively. I > > > > > > >>> would appreciate a clear example of > this > > > > > > pattern. I think that this > > > > > > >>> is a common situation where some > documentation > > > > > > would benefit many > > > > > > >>> people. > > > >>> > > > >>> Thanks! Paul > > > >>> > > > > > > > > > > > > > -- > Sergio Cambra .:: entreCables S.L. ::. > Mariana Pineda 23, 50.018 Zaragoza > T) 902 021 404 F) 976 52 98 07 E) [email protected] > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "ActiveScaffold : Ruby on Rails plugin" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/activescaffold?hl=en -~----------~----~----~----~------~----~------~--~---
