# Problems with parsing params for Active Record

**URL:** <https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109>\
**Category:** Rails\
**Created:** [May 24, 2010, 7:03pm UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109 "2010-05-24T19:03:14Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 24, 2010, 7:03pm UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/1 "2010-05-24T19:03:14Z")

</div>

Hi,

I have come into an odd problem that I couldn’t figure out why.  
Basically, what I did is to save a record from the form, but there’s  
some field that parsed to the active record returns as nil.

Example:

article = Article.new({“title”=\>“halo world”,“content”=\>“lorem ipsum”,  
“tags”=\>“test,article,fun”,“project\_id”=\>“1”})  
#\<Article id:nil, title: “halo world”,content:“lorem ipsum”, tags:nil,  
project\_id:nil\>

I don’t understand why tags and project\_id is nil, while I supplied my  
data.

My Migration Data

create\_table :articles do |t|  
t.string :title  
t.text :tags  
t.text :keyword  
t.text :content  
t.references :project  
end

I am running on ruby 1.8.6 entreprise and rails 2.3.5.

Have someone come across this before. Really need some advise.

Thanks

---

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 24, 2010, 8:50pm UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/2 "2010-05-24T20:50:22Z")

</div>

On May 24, 6:01 pm, tonymocha [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> #\<Article id:nil, title: “halo world”,content:“lorem ipsum”, tags:nil,  
> project\_id:nil\>
> 
> I don’t understand why tags and project\_id is nil, while I supplied my  
> data.

Are you using attr\_protected anywhere (or are any plugins calling it  
on your models) ?

Fred

---

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 24, 2010, 9:14pm UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/3 "2010-05-24T21:14:23Z")

</div>

Thanks for reply Frederick.

Is a new project. I didn’t use any plugins. More funny thing is I  
manually set the attributes without problem.

Example:  
article.project\_id=1

It works. However, not for parsing by array. I have did a few project  
before, this is the first time encounter this funny issue. I try this  
on rails console too, it is the same result.

On May 25, 2:49 am, Frederick C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 24, 2010, 10:21pm UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/4 "2010-05-24T22:21:43Z")

</div>

Hi Frederick,

How about :

article = Article.new({:title =\>“halo world”,:content=\>“lorem ipsum”,  
:tags=\>“test,article,fun”,:project\_id=\>“1”})

This example can be found at

> **[ActiveRecord::Base](https://api.rubyonrails.org/classes/ActiveRecord/Base.html)**
>
> Active Record Active Record objects don't specify their attributes directly, but rather infer them from the table definition with which they're linked.

Passing data this way requires an hash therefore :title =\> “bla bla”  
as we are dealing with attributes.

Did it worked out?

---

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 25, 2010, 8:04am UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/5 "2010-05-25T08:04:11Z")

</div>

Hi Joao,

Is the same thing. Project ID and Tags leaves as nil for no reason.

On May 25, 4:22 am, Joao S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 24, 2010, 10:23pm UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/6 "2010-05-24T22:23:28Z")

</div>

Hi Frederick,

How about :

article = Article.new(:title =\>“halo world”,:content=\>“lorem ipsum”,  
:tags=\>“test,article,fun”,:project\_id=\>“1”)

This example can be found at

> **[ActiveRecord::Base](https://api.rubyonrails.org/classes/ActiveRecord/Base.html)**
>
> Active Record Active Record objects don't specify their attributes directly, but rather infer them from the table definition with which they're linked.

Did it worked out?

---

<div class="post-metadata">

**Author:** ![tonymocha](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/74df32/32.png) [@tonymocha](https://www.ruby-forum.com/u/tonymocha)\
**Post date:** [May 25, 2010, 8:33am UTC](https://www.ruby-forum.com/t/problems-with-parsing-params-for-active-record/189109/7 "2010-05-25T08:33:28Z")

</div>

On May 25, 7:03 am, tonymocha [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Hi Joao,
> 
> Is the same thing. Project ID and Tags leaves as nil for no reason.

Are there any warnings in the console ? This really does sound an  
awful lot like attr\_protected or attr\_accessible are being used  
without you knowing it.

Fred
