sekarang barusan sudah baca saya :-D
On 05/12/2007, pipit haryadi <[EMAIL PROTECTED]> wrote:
> Yang saya inginkan data yang no.3 tadi bisa ditampilkan secara continyu "next
> or previous" tidak usah kembali lagi ke data sebelumnya.
saya konfirmasi dulu , jadi yang Anda inginkan adalah 2 hyperlink yang
memiliki requirement specification sebagai berikut:
NEXT hyperlink seharusnya akan menampilkan show page untuk profile
buku selanjutnya berdasarkan pengurutan dari hasil pencarian.
dan
PREVIOUS hyperlink seharusnya menampilkan show page untuk profile buku
sebelumnya berdasarkan pengurutan dari hasil pencarian.
yang ada di kepala saya (jadi code saya ini 100% belum pernah saya
test, hanya diluar kepala alias ngayal, harap maklum kalo ngaco)
adalah di ActionController#show Anda tambahkan 2 assigns ke variabel
@next_book dan @previous_book.
itu short talk nya gitu. kalau long version nya bisa diimplementasikan
bergantung sesuai kebutuhan requirement spec Anda lagi. di contoh saya
adalah begini saja:
def show
@next_book = @book.next_book
end
dari mana kok bisa bisanya saya sudah pasang variabel @book disitu ?
karena biasanya saya langsung pasang variabel @book di before_filter
karena variabel tersebut juga digunakan untuk metode edit dan destroy.
Berikut isi dari callback:
protected
def load_book
@book = Book.find(params[:id])
rescue ActiveRecord::RecordNotFound
flash[:error] = 'Book is not found!'
redirect_to root_url
end
sementara di atasnya di bawah class BooksController < ActionController
itu Anda taroh:
before_filter :load_book, :only => [ :show, :edit, :update, :destroy ]
hiyaaat... dari tenggorokan hingga otak saya panas mendidih karna gak
sabaran dari tadi pingin ke intinya yang akan saya tulis baru di
paragraf saya dibawah ini!
untuk metode next_book itu tentu didefinisikan di dalam file model book.rb
bentuknya boleh jadi begini:
def next_book
book = Book.find_by_title_and_isbn_and_publisher(title, isbn,
publisher, :conditions => [ 'title LIKE ?', '%' + title + '%'], :order
=> 'updated_at DESC')
book = Book.find_by_title_and_isbn_and_publisher(title, isbn,
publisher) unless book
book
end
silakan modifikasi lagi ide dari metode next_book diatas sesuai
requirement spec program yang seharusnya sudah Anda tulis terlebih
dahulu di file /spec/models/book_spec.rb Anda berikut
requirement2x-nya apa saja untuk menjadi bukti kuat bahwa algoritma
yang Anda pakai tidak rontok.
oops. tambahan: begitu pula dengan metode previous_book kurang lebih
demikian diatas. you will find it! Semoga Sukses! MERDEKA!
--
Arie | http://linkedin.com/in/ariekeren | http://profile.to/ariekeren/
http://ariekusumaatmaja.wordpress.com | http://groups.yahoo.com/groups/id-ruby