from org.apache.lucene.search import IndexSearcher
from org.apache.lucene.analysis.ja import JapaneseAnalyzer, JapaneseTokenizer
from org.apache.lucene.store import SimpleFSDirectory
-from org.apache.lucene.document import Document as LuceneDocument, Field, TextField, StringField
+from org.apache.lucene.document import Document as LuceneDocument, Field, TextField, StringField, IntField
from org.apache.lucene.queryparser.classic import QueryParser
def init_vm():
return Field.Store.YES
return Field.Store.NO
- def add_string_field(self, name, content, store=True):
- self.doc.add(StringField(name, content, self._store_flag(store)))
+ def add_string_field(self, name, value, store=True):
+ self.doc.add(StringField(name, value, self._store_flag(store)))
return self
- def add_text_field(self, name, content, store=True):
- self.doc.add(TextField(name, content, self._store_flag(store)))
+ def add_text_field(self, name, value, store=True):
+ self.doc.add(TextField(name, value, self._store_flag(store)))
+ return self
+
+ def add_int_field(self, name, value, store=True):
+ self.doc.add(IntField(name, value, self._store_flag(store)))
return self
kwargs["limit"] = self.config("default_limit")
if "stoid" in kwargs:
- query = ("SELECT stories.stoid, stories.sid, story_text.* FROM stories"
+ query = ("SELECT stories.*, story_text.* FROM stories"
" LEFT JOIN story_text USING(stoid)"
" WHERE stories.stoid = %(stoid)s"
" ORDER BY stories.stoid DESC LIMIT %(limit)s")
else:
- query = ("SELECT stories.stoid, stories.sid, story_text.* FROM stories"
+ query = ("SELECT stories.*, story_text.* FROM stories"
" LEFT JOIN story_text USING(stoid)"
" ORDER BY stories.stoid DESC LIMIT %(limit)s")