creating 2 things at the same time?

So I have 2 models, Comment and Picture. A Comment has one Picture if
the users so chooses, but when someone is creating a Comment, it would
of course call the create method in the Comment Controller. However, I
want it to create a Picture as well. I could add it to the create
method in the Comment Controller, but that does not seem very DRY. Is
there a way I can do this?

Question is not clear, do you want to create an empty picture record
anyway?

Hi Mike Chai

   What I understood is you have relations like

comment has_one picture
picture belongs_to comment

As an example
comment name:string
picture name:string,comment_id:integer

So do as below

in comments_controller new action
@comment = Comment.new
@comment.picture = Picture.new

    Now in view/comments/new.html.erb

<% form_for(@comment) do |f| %>
  <p>
    <%= f.label :name %><br />
    <%= f.text_field :name %>
  </p>

  <p>
   <% f.fields_for :picture do |p| %>
     <%= p.text_field :name %>
   <% end %>
  </p>
  <p>
    <%= f.submit 'Create' %>
  </p>
<% end %>

     in model Comment write (modify this according to your needs)

has_one :picture,:dependent => :destroy
accepts_nested_attributes_for :picture,:reject_if => proc { |attributes|
attributes['name'].blank? }

     in create action of comments controller

@comment = Comment.new(params[:comment])
@comment.save

   Thats all..Modify the rest of your code like this..This is just an
example

Sijo