comparison blog/src/lib/Post.luan @ 599:50540f0813e2

support default search fields in lucene; add search to blog;
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 16 Sep 2015 20:55:49 -0600
parents 6bb0c83116e9
children b73f005f3735
comparison
equal deleted inserted replaced
598:e930f92d0f61 599:50540f0813e2
2 local error = Luan.error 2 local error = Luan.error
3 local ipairs = Luan.ipairs or error() 3 local ipairs = Luan.ipairs or error()
4 local assert_string = Luan.assert_string or error() 4 local assert_string = Luan.assert_string or error()
5 local Time = require "luan:Time" 5 local Time = require "luan:Time"
6 local now = Time.now or error() 6 local now = Time.now or error()
7 local String = require "luan:String"
8 local trim = String.trim or error()
7 local Db = require "site:/lib/Db" 9 local Db = require "site:/lib/Db"
8 10
9 11
10 local M = {} 12 local M = {}
11 13
50 posts[#posts+1] = from_doc(doc) 52 posts[#posts+1] = from_doc(doc)
51 end 53 end
52 return posts 54 return posts
53 end 55 end
54 56
57 function M.search(query)
58 query = trim(query)
59 if #query == 0 then
60 return M.get_all()
61 end
62 local docs = Db.search(query,1,1000)
63 local posts = {}
64 for _, doc in ipairs(docs) do
65 posts[#posts+1] = from_doc(doc)
66 end
67 return posts
68 end
69
55 return M 70 return M