On 21 January 2011 21:22, abdelkarim <[email protected]> wrote:
> hello thank you for your reply

Please don't top post, it makes it difficult to follow the thread.
Insert your reply at appropriate points in previous message.  Thanks

>
> i will explain to you a little more the problem :
>
> i created a scafold :
>
> ./script/generate scaffold Zone name:string interface:string
> description:string
>
> all works fine .
>
> than i changed  <%= f.text_field :interface %> to
> <%=  f.select :interface , @table_Interfaces %>
>
> @table_interfaces is an array witch contains all network interface in
> the linux machine .
>
> in my controller i have :
>
>  @interfaces=%x[ifconfig|grep Link|cut -d " " -f 1]
>  @[email protected](" ")

I suggest you use ruby-debug to break in here and inspect the
variables to see what is going on.  Have a look at the Rails Guide on
debugging to find out how.

Also have you tried running the code above in the ruby console to see
what it generates?

A secondary issue, but the rails convention for naming is
@table_interfaces (all lower case).  If you stick to the rails
conventions your life will generally be simpler.

Colin

>
> and at this step all works fine . i can make all the operation on my
> object Zone.
>
>
> then i wanted to make some validation in the model .
>
> i aded this in my model file Zone.rb :
>
> class Zone < ActiveRecord::Base
> validates_presence_of :name
> end
>
> Now when i want to create a new zone :
>
> if i enter all the attribute it works fine .
>
> if i don't enter the name i have this error :
>
> Showing app/views/zones/new.html.erb where line #12 raised:
>
> You have a nil object when you didn't expect it!
> You might have expected an instance of Array.
> The error occurred while evaluating nil.inject
>
> Extracted source (around line #12):
> <%=  f.select :interface , @table_Interfaces %>
>
>
> witch mean that the model don't know the object @table_Interfaces
> witch is declared only on the controller no ?
>
> should I add something in my model file related to @table_Interfaces ?
>
> thank you very much for your help . i am a newbie in ROR world but i
> have searched a lot without result .
>
>
> On 20 jan, 09:29, Colin Law <[email protected]> wrote:
>> On 19 January 2011 23:58, abdelkrim fitouri <[email protected]> wrote:
>>
>>
>>
>> > hello every body !
>>
>> > i have a little problem
>>
>> > i have created a scaffold Zone witch contain : name , interface and
>> > description as attribute
>>
>> > all works fine but when i add this line to my model :
>>
>> > class Zone < ActiveRecord::Base
>>
>> > validates_presence_of :name, :message => "Missing name "
>>
>> > end
>>
>> > i have an error when the name is empty !
>>
>> > this is the error :
>>
>> > You have a nil object when you didn't expect it!
>> > You might have expected an instance of Array.
>> > The error occurred while evaluating nil.inject
>>
>> Look carefully at the error and if necessary the stack trace and you
>> should find an indication of where it is failing in your code.  Look
>> at that line and you will likely find a call of inject, the error is
>> telling you that the object you are calling inject on is nil.
>>
>> Colin
>>
>>
>>
>> > any help please i have searched a lot but i don't found any solution  :(
>> > have i forgot any step ?
>>
>> > thanks a lot
>>
>> > --
>> > Cordialement
>> > Abdelkarim Fitouri
>> > Membre Securinets :http://www.securinets.com
>> > Élève ingénieur .
>> > Technicien Réseaux et Systèmes : Agence Universitaire de la Francophonie
>> > (AUF)
>> > Cnf Tunis .
>>
>> > --
>> > 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.
>
> --
> 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.
>
>

-- 
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