kalau saya jalankan di script console seperti ini
>> Student.search
("name_like"=>"bob") =>
#<Searchlogic::Search:0x103111d00 @conditions={:name_like=>"bob"},
@current_scope=nil, @klass=Student(id: integer, student_no: string,
register_date: date, name: string, place_birth: string, date_birth:
date, address: text, phone_number: string, handphone_number: string,
school_id: integer, grade: string, father_name: string, mother_name:
string, status: boolean, created_at: datetime, updated_at: datetime,
photo_file_name: string, photo_content_type: string, photo_file_size:
integer, photo_updated_at: datetime)
itu bisa, namun jika saya tambahkan dengan params yang di passing oleh
date_select, maka menjadi :
>> Student.search("name_like"=>"bob", "register_date_equals
(1i)"=>"2005","register_date_equals(2i)"=>"1", "register_date_equals
(3i)"=>"2") NoMethodError: You have a nil object
when you didn't expect it!You might have expected an instance of
ActiveRecord::Base.The error occurred while evaluating nil.[]
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:128:in `condition_name'
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:82:in `method_missing'
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:67:in `send'
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:67:in `conditions='
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:64:in `each'
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:64:in `conditions='
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:50:in `initialize'
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:25:in `new'
from /usr/local/lib/ruby/gems/1.8/gems/searchlogic-2.3.5/lib/
searchlogic/search.rb:25:in `search'
from (irb):6
apa berarti date select tidak cocok dengan searchlogic, atau teknik
pemakaian yang saya gunakan salah?
On Oct 18, 2009, at 11:08 PM, Arie Kusuma Atmaja wrote:
> 2009/10/18 Bobby Adi Prabowo <[email protected]>:
>
> > oh begitu yah.
> > padahal pada controllernya methodnya seperti ini
> >
> > def index
> > @search = Student.search(params[:search])
> > @students = @search.all.paginate :page => params
> > [:page], :per_page => 10, :order => 'id DESC'
> >
> > respond_to do |format|
> > format.html # index.html.erb
> > format.xml { render :xml => @students }
> > end
> > end
>
> Kalau sudah begitu berarti periksa apakah Anda mengiterate Array
> kosong. Caranya biar Anda langsung dengan cepat lihat dari
> script/console atau script/runner aja dan jalankan class method search
> dari Student class tsb di console Anda. Jangan lupa Anda harus selalu
> tail -f log/development.log buat lihat SQL Query nya seperti apa
> hasilnya .
>
> > The error occurred while evaluating nil.[]
>
> May The Force be with you. http://bit.ly/Oue4s
>
[Non-text portions of this message have been removed]