On Apr 24, 12:39 pm, amna <[email protected]> wrote:
> Hi,
> I'm new at this.. can you please help me..
> the drop down menus are fine, however when i click submit the
> selection is not saved and it tells me that movie and type can't be
> blank
>

Like the other hellers, the first parameter should be the name of the
instance variable, ie 'movie_type' in your case. Or, since you are
using form_for, you could use f.collection_select and drop the first
parameter altogether.

Fred
> Here is my movie_types controller
> class MovieTypesController < ApplicationController
> before_filter :login_required, :only => [:new, :create]
>
>   # GET /movie_types
>   # GET /movie_types.xml
>   def index
>     @movie_types = MovieType.find(:all)
>
>     respond_to do |format|
>       format.html # index.html.erb
>       format.xml  { render :xml => @movie_types }
>     end
>   end
>
>   # GET /movie_types/1
>   # GET /movie_types/1.xml
>   def show
>     @movie_type = MovieType.find(params[:id])
>
>     respond_to do |format|
>       format.html # show.html.erb
>       format.xml  { render :xml => @movie_type }
>     end
>   end
>
>   # GET /movie_types/new
>   # GET /movie_types/new.xml
>   def new
>     @movie_type = MovieType.new
>
>     respond_to do |format|
>       format.html # new.html.erb
>       format.xml  { render :xml => @movie_type }
>     end
>   end
>
>   # GET /movie_types/1/edit
>   def edit
>     @movie_type = MovieType.find(params[:id])
>   end
>
>   # POST /movie_types
>   # POST /movie_types.xml
>   def create
>     @movie_type = MovieType.new(params[:movie_type])
>
>     respond_to do |format|
>       if @movie_type.save
>         flash[:notice] = 'MovieType was successfully created.'
>         format.html { redirect_to(@movie_type) }
>         format.xml  { render :xml => @movie_type, :status
> => :created, :location => @movie_type }
>       else
>         format.html { render :action => "new" }
>         format.xml  { render :xml => @movie_type.errors, :status
> => :unprocessable_entity }
>       end
>     end
>   end
>
>   # PUT /movie_types/1
>   # PUT /movie_types/1.xml
>   def update
>     @movie_type = MovieType.find(params[:id])
>
>     respond_to do |format|
>       if @movie_type.update_attributes(params[:movie_type])
>         flash[:notice] = 'MovieType was successfully updated.'
>         format.html { redirect_to(@movie_type) }
>         format.xml  { head :ok }
>       else
>         format.html { render :action => "edit" }
>         format.xml  { render :xml => @movie_type.errors, :status
> => :unprocessable_entity }
>       end
>     end
>   end
>
>   # DELETE /movie_types/1
>   # DELETE /movie_types/1.xml
>   def destroy
>     @movie_type = MovieType.find(params[:id])
>     @movie_type.destroy
>
>     respond_to do |format|
>       format.html { redirect_to(movie_types_url) }
>       format.xml  { head :ok }
>     end
>   end
> end
>
> view: new.html
> <h1>New movie_type</h1>
>
> <%= error_messages_for :movie_type %>
>
> <% form_for(@movie_type) do |f| %>
>   <p>
>     <b>Type</b><br />
> <%= collection_select(:type, :type_id, Type.find(:all), :id, :name)%>
>   </p>
>
>   <p>
>     <b>Movie</b><br />
> <%= collection_select(:movie, :movie_id, Movie.find
> (:all), :id, :title) %>
>   </p>
>
>   <p>
>     <%= f.submit "Create" %>
>   </p>
> <% end %>
>
> <%= link_to 'Back', movie_types_path %>
>
> thank you
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" 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/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to