# Help using a rake task to add items to my database?

**URL:** <https://www.ruby-forum.com/t/help-using-a-rake-task-to-add-items-to-my-database/158618>\
**Category:** Rails\
**Created:** [January 25, 2009, 11:45pm UTC](https://www.ruby-forum.com/t/help-using-a-rake-task-to-add-items-to-my-database/158618 "2009-01-25T23:45:35Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![sharon](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/67e7ee/32.png) [@sharon](https://www.ruby-forum.com/u/sharon)\
**Post date:** [January 25, 2009, 11:45pm UTC](https://www.ruby-forum.com/t/help-using-a-rake-task-to-add-items-to-my-database/158618/1 "2009-01-25T23:45:35Z")

</div>

Once a month or so, I’d like to pull data from an RSS feed and add it  
into my database. I’ve written a rake task that properly reads the  
feed, parses it and assigns the correct information to new instances  
of my @event model - when I run the rake task and have it print out  
the various @event attributes, they’re correct. However, when I  
include the command @event.save nothing happens.

In fact, when I added this code

if @event.save  
puts “Event saved”  
else  
puts “Event not saved, bummer”

I got “Event not saved, bummer”

Is it possible to use a rake task to add entries to my application’s  
database? If so, any suggestions as to what I might be doing wrong?  
I’m testing this in my development environment, and I start my task  
definition using

task (:parse\_info =\> :environment) do

Any suggestions would be greatly appreciated. Thanks.

---

<div class="post-metadata">

**Author:** ![sharon](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/67e7ee/32.png) [@sharon](https://www.ruby-forum.com/u/sharon)\
**Post date:** [January 26, 2009, 12:35am UTC](https://www.ruby-forum.com/t/help-using-a-rake-task-to-add-items-to-my-database/158618/2 "2009-01-26T00:35:55Z")

</div>

Try this and see what is printed:

if @event.save  
puts “Event saved”  
else  
puts @event.errors.full\_messages.inspect  
end

What you’re doing sounds right, most likely though you have a  
validation that is keeping the model from saving.

---

<div class="post-metadata">

**Author:** ![sharon](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/67e7ee/32.png) [@sharon](https://www.ruby-forum.com/u/sharon)\
**Post date:** [January 26, 2009, 2:17am UTC](https://www.ruby-forum.com/t/help-using-a-rake-task-to-add-items-to-my-database/158618/3 "2009-01-26T02:17:07Z")

</div>

> What you’re doing sounds right, most likely though you have a  
> validation that is keeping the model from saving.
> 
> or, possibly a before\_filter.

–wpd

---

<div class="post-metadata">

**Author:** ![sharon](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/67e7ee/32.png) [@sharon](https://www.ruby-forum.com/u/sharon)\
**Post date:** [January 26, 2009, 2:27am UTC](https://www.ruby-forum.com/t/help-using-a-rake-task-to-add-items-to-my-database/158618/4 "2009-01-26T02:27:03Z")

</div>

Yes, thank you so much, that’s exactly it! A nil value for one of the  
attributes was triggering an error, because there’s a validation for a  
maximum value. I gather a maximum value validation requires there to  
be a value to check and not nil. Changing that attribute to a  
string="" for all the entries solved the problem.
