Ruby - NoMethodError (undefined method for nil: NilClass):

I'm having difficulty trying to figure out what I'm doing wrong. My query ActiveRecordreturns nilwhich, it seems to me, calls NoMethodError.

Here is what I have:

@number_exclude_list = ["1234567890", "2223334545"] 
@available_number = UserNumber.where.not(:user_num => @number_exclude_list)

Returns an empty rowset:

=> #<ActiveRecord::Relation []>

So, I have a:

if (@available_number.empty?)
   inform_user_empty
else
   do_my_other_function

But I get:

`NoMethodError (undefined method 'inform_user_empty' for nil:NilClass)`

I tried: @available_number.blank?and`@available_number.nil?

And I still get the same NoMethodError. Any ideas on what I'm doing wrong here?

+4
source share
2 answers

NoMethodError (undefined method 'inform_user_empty' for nil:NilClass) , #inform_user_empty nil, nil . :

  • self nil, , , ApplicationController. , self nil, :

    if @available_number.empty?
       p self
       self.inform_user_empty
    

    .

  • . , .

+2

:

@available_number = UserNumber.where.not(:user_num => @number_exclude_list)

ArgumentError: wrong number of arguments (0 for 1+), NOT IN Rails.

:

User.where('user_num NOT IN (?)',@number_exclude_list)

:

if @available_number == nil
   inform_user_empty
else
   do_my_other_function
end

Hoep, . , , .

+1

Source: https://habr.com/ru/post/1526291/


All Articles