I don't get why my model isn't saving - assistance requested


I’m trying to do something relatively basic. I’m using the restful
authentication plugin, so I have Users, and I also have Tasks which
belong to a user:

class User < ActiveRecord::Base
has_many :assigned_tasks, :class_name => “Task”, :foreign_key =>
has_many :created_tasks, :class_name => “Task”, :foreign_key =>

class Task < ActiveRecord::Base
belongs_to :creator, :class_name => “User”, :foreign_key =>
belongs_to :user, :class_name => “User”, :foreign_key =>

I’m using Rails 2.1.1 so I’m doing this in the view:


<% form_for @task do |f| %>
… fields
<% end %>

But the application posts to the index action, not the create action
like it’s supposed to; even if I try to post a blank form, when errors
should be raised, it’s posting without raising any errors whatsoever.
The new action in the controller reads like this:

def new
@task = @current_user.created_tasks.build

and here’s the create action:

def create
@task = @current_user.created_tasks.build(params[:task])
if @task.save
flash[:notice] = “Task was created”
redirect_to task_path(@task)
render :action => ‘new’

Can someone let me know what I’m doing wrong? Should I not be
creating the task with build? I thought I was getting pretty decent
with the basics of Rails, but I guess not because something this
simple is tripping me up.


Okay… I have no idea what the problem was, but it seems to be
working right now.


I had the same problem, restarting the server helped.


if you do task.save! it should show you where it fails