Я использую Apache Solr .. У меня есть следующий сценарий ..:
У меня есть две таблицы в моей базе данных PostGreSQL.Одним из них является " Автомобили ".Другой - это " Дилеры "
Теперь у меня есть файл конфигурации данных для Автомобили , как показано ниже:
<document name="offerings">
<entity name="jc_offerings" query="select * from jc_offerings" >
<field column="id" name="id" />
<field column="name" name="name" />
<field column="display_name" name="display_name" />
<field column="extra" name="extra" />
</entity>
</document>
У меня есть похожие данные - config.xml для " Дилеры ".Он имеет те же поля, что и автомобили: name, extra etc
Теперь в моем Schema.xml я определил следующие поля:
<fields>
<field name="id" type="string" indexed="true" />
<field name="name" type="name" indexed="true" />
<field name="extra" type="extra" indexed="true" />
<field name="CarsText" type="text_general" indexed="true"
stored="true" multiValued="true"/>
</fields>
<uniqueKey>id</uniqueKey>
<defaultSearchField>CarsText</defaultSearchField>
<copyField source="name" dest="CarsText"/>
<copyField source="extra" dest="CarsText"/>
Теперь я хочуискать как: "где зовут Марути" .. Так как же Solr узнает, нужно ли искать ::: Поле автомобилей: имя ИЛИ Поле дилера "имя" .. ??
Я прочитал по следующей ссылке: http://wiki.apache.org/solr/MultipleIndexes
Но я не могу понять, как это работает .. ??
Прочитав эту ссылку: я сделал еще одно поле в Мои Автомобили и Дилеры * data-config.xml * .. Что-то вроде:
<field name="type" value="car" /> : in Cars date-config.xml
и
<field name="type" value="dealer" /> : in Cars date-config.xml
А затем в Schema.xml ясоздал новое поле:
<field name="type" type="string" indexed="true" stored="true" />
А потом я запросил что-то вроде:
localhost:8983/solr/select?q=name:Maruti&fq=type:dealer
Но это не сработало .. !!
Так что мне делать .. ??