<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    asdtiang的博客 感謝blogjava提供的博客交流平臺

    grails searchable highlight顯示查詢結(jié)果

    Posted on 2010-12-22 17:46 asdtiang 閱讀(738) 評論(0)  編輯  收藏 所屬分類: grails study
    查不到中文的結(jié)果,所以這里記一下
    以前用lucene時,還比較好控制,用searchable還不太適應(yīng)。
    def index = {
            
    if (!params.q?.trim()) {
                
    return [:]
            }

            
    try {
                params.withHighlighter
    = songHighlighter
                
    return [searchResult: searchableService.search(params.q, params)]
            }
     catch (SearchEngineQueryParseException ex) {
                
    return [parseException: true]
            }

        }

      
    // This closure does the per-hit highlighting
    // sr is the actual Map returned by search, so use that for storage
       def songHighlighter = { highlighter, index, sr ->
        
    // lazy-init the storage
        if (!sr.highlights) {
            sr.highlights 
    = []
        }
       
        
    //content為domain的屬性
        sr.highlights[index] = highlighter.fragment("content")   
       }
    // Do the search, passing he highlighter option

    頁面更改:
     <g:each var="result" in="${searchResult.results}" status="index">
              
    <div class="result">
                
    <g:set var="className" value="${ClassUtils.getShortName(result.getClass())}" />
                
    <g:set var="link" value="${createLink(controller: className[0].toLowerCase() + className[1..-1], action: 'show', id: result.id)}" />
                
    <div class="name"><href="${link}">${result.title}</a></div>

                
    <div class="desc">${searchResult.highlights[index]}</div>
                
    <div class="displayLink">${link}</div>
              
    </div>
            
    </g:each>
    查詢結(jié)果示例,直接輸出的searchResults

    {total=3, hits=org.compass.core.impl.DefaultCompassDetachedHits@4eb331, max=10, scores=[0.34462962, 0.34462962, 0.19071755], results=[asdf, asdf, 中國(拼音:Zhōngguó),是中華人民共和國的簡稱。古代華夏族建國于黃河流域一帶,以為居天下之中,故稱。還有一種解釋古代中國人認為天圓地方,中國位于正中,故稱中國,后成為專稱。清朝,作為官方正式稱呼,現(xiàn)代主要指中華人民共和國(英譯為:The People's Republic of China,簡稱China)。 陸地面積960萬平方千米,東部和南部大陸海岸線1.8萬多千米,內(nèi)海和邊海的水域面積約470多萬平方千米。海域分布有大小島嶼7600個。首都北京。中國具有五千年的文明史,是世界四大文明古國之一。因其文化傳播的廣泛性、獨特性和成熟性而對周邊國家和民族的文化產(chǎn)生深遠影響,同時不斷吸收各個民族的文明成果,是世界上少數(shù)最早產(chǎn)生文明并延續(xù)至今的國家之一。 ], offset=0, highlights=[null, null, 國(拼音:Zhōngguó),是華人民共和國的簡稱。古代華夏族建國于黃河流域一帶,以為居天下之,故稱。還有一種解釋古代國人認為天圓地方,國位于正,故稱國,后成為專稱。清朝,作為官方正式]}


    查詢結(jié)果高亮顯示css為b,
    只要在css里加上b{color : red;},就顯示為紅色了。

    從結(jié)果可以看出,要了highlights就沒有必要要results,信息重復(fù),但each里用了,要下班了,明天研究下吧

    剛到公司,想起來了,當時在domain類下重寫了toString()方法,不重寫results里就沒有那么多內(nèi)容了。



    天蒼蒼,野茫茫,風吹草底見牛羊

    posts - 80, comments - 24, trackbacks - 0, articles - 32

    Copyright © asdtiang

    asdtiang的博客 PaidMailz
    點擊廣告網(wǎng)賺A(每天4個廣告,每個0.0025美元,一個搜索廣告0.03美元)
    主站蜘蛛池模板: 18成禁人视频免费网站| 国产乱辈通伦影片在线播放亚洲 | 亚洲免费在线视频| 成人免费无码大片a毛片| 久久精品国产精品亚洲下载| 白白色免费在线视频| 免费黄色福利视频| 亚洲中文字幕久久精品无码APP| 性xxxx黑人与亚洲| 午夜免费啪视频在线观看 | 亚洲中文字幕久在线| 中文字幕视频在线免费观看| 韩国欧洲一级毛片免费| 久久久久亚洲AV无码专区体验| 免费在线观看一区| 免费激情视频网站| 边摸边吃奶边做爽免费视频99| 我的小后妈韩剧在线看免费高清版| 亚洲精品无码国产| 一级视频免费观看| 四虎永久免费地址在线网站| 精品亚洲AV无码一区二区三区 | 亚洲熟女精品中文字幕| 每天更新的免费av片在线观看 | 添bbb免费观看高清视频| 亚洲国产精品一区二区成人片国内| 国内成人精品亚洲日本语音 | 国产一级a毛一级a看免费人娇| 国产免费131美女视频| 成人免费网站久久久| 免费在线观看理论片| 亚洲av无码一区二区三区四区| 可以免费看黄视频的网站| 亚洲精品理论电影在线观看| 午夜两性色视频免费网站| 永久免费无码日韩视频| 亚洲电影在线播放| 免费三级毛片电影片| 四虎永久在线精品免费一区二区| 亚洲av无码不卡一区二区三区| 久久久久国产精品免费免费不卡|