Aramaları çalıştırmak için Thinking Sphinx kullanıyorum ve uygun ActiveRecord Modellerini iyi alıyorum. Sorun şu ki, her modelde uygun bir link yolu ve metin oluşturmak istiyorum, daha sonra bilgiyi AJAX aracılığıyla JSON biçiminde tarayıcıya gönderiyorum. O bağlantıyı kurmak için aşağıdaki kullanıyorum nitelikleri: Attr_accessor tanımlı değişkenlere erişilemiyor
class FindController < ApplicationController
def tag_results
@results = ThinkingSphinx.search(params[:terms])
@results.each do |result|
result.build_ajax_response
end
respond_to do |format|
format.html
format.json { render :json => @results }
end
end
end
modelde:
class TaggedItem < ActiveRecord::Base
attr_accessible :name
attr_accessor :search_link, :search_text
def build_ajax_response
self.search_link = Rails.application.routes.url_helpers.tagged_item_path(self.id)
self.search_text = self.name
end
end
çıkan json nesnesi * nitelikler listelenmiş çok daha az bir değere sahip search_ birini yok denetleyici olarak
onlar için. Ben sadece search_link kullanarak yanı sıra
build_ajax_response
yönteminde search_link kullanmayı denedim.
Bunu yanlış mı yapıyorum? Başka bir şey olabilir mi?
Konsolda 'build_ajax_response' kullanmayı denediniz mi? Bir şey yükseltilmiş mi, bir şey mi ayarlanmış? – Draiken
build_ajax_response
çalıştırdığımda, herhangi bir hata oluşturmaz, ancak, tipik yakut biçiminde, son değerlendirilen ifadeyi döndürür. (Bu durumda, self.name) – Tricnic