JRuby と Sunspot を使用した Rails でのインデックス作成に問題があります。参照データを含む追加のデータベースと、テーブルの 1 つに関連付けられたモデルがあります。これは私のdatabase.ymlがどのように見えるかです:
# regular stuff
# ...
# reference database
snomed:
adapter: jdbcmysql
encoding: utf8
hostname: localhost
database: snomedct
username: user
password: pass
socket: /tmp/mysql.sock
pool: 5
timeout: 5000
そして、これはそのデータベースの私のモデルがどのように見えるかです:
class SnomedMaster < ActiveRecord::Base
establish_connection "snomed"
self.table_name = "curr_description_f"
attr_accessible :effectivetime, :active, :moduleid, :conceptid, :languagecode, :typeid, :term, :casesignificanceid
searchable do
text :term
end
end
ただし、 Rails コンソールでSnomedMaster.indexを実行するか、sunspot :reindex をレーキしてフィールドのインデックスを作成しようとすると、機能しません。問題はここにあるようです (トレースログから):
SELECT `curr_description_f`.* FROM `curr_description_f` WHERE (`curr_description_f`.`` >= 0) ORDER BY `curr_description_f`.`` ASC LIMIT 50
ActiveRecord::JDBCError: Unknown column 'curr_description_f.' in 'where clause': SELECT `curr_description_f`.* FROM `curr_description_f` WHERE (`curr_description_f`.`` >= 0) ORDER BY `curr_description_f`.`` ASC LIMIT 50
太陽黒点が列 *curr_description_f* にアクセスしたい理由がわかりません...
ありがとう