enlive で HTML を parse してみる

| コメント(0) | トラックバック(0)

さっきのエントリ の続き。

チュートリアルのページにある templates/header.html をプロジェクトの src 以下に配置しました。コミットはこれ

分からなくてハマった(ハマってる)のが

  • templates ディレクトリの作成場所
    • 最初、 src と同じ階層においてしまった
    • src の中に置く、で良いのだろうか
  • チュートリアルでは次にコードが続いているけど、それは src/core.clj に書いていいんだろうか?

lein repl で作成したテンプレートを読み込みしてみると、ここまでは上手く行っているように見える。

enlive-templating ➤ lein repl
nREPL server started on port 49735
REPL-y 0.1.10
Clojure 1.5.1
    Exit: Control+D or (exit) or (quit)
Commands: (user/help)
    Docs: (doc function-name-here)
          (find-doc "part-of-name-here")
  Source: (source function-name-here)
          (user/sourcery function-name-here)
 Javadoc: (javadoc java-object-or-class-here)
Examples from clojuredocs.org: [clojuredocs or cdoc]
          (user/clojuredocs name-here)
          (user/clojuredocs "ns-here" "name-here")
user=> (ns enlive-templating
  #_=>   (:require [net.cgrand.enlive-html :as html]))
nil
enlive-templating=> (use 'clojure.pprint)
nil
enlive-templating=> (pprint (html/html-resource "templates/header.html"))
({:type :dtd, :data ["html" nil nil]}
 {:tag :html,
  :attrs {:lang "ja"},
  :content
  ("\n  "
   {:tag :body,
    :attrs nil,
    :content
    ("\n\t"
     {:tag :header, 
      :attrs nil,   
      :content
      ("\n\t  "
       {:tag :h1, :attrs nil, :content ("Header placeholder")}
       "\n\t  "
       {:tag :ul,   
        :attrs {:id "navigation"},
        :content
        ("\n\t\t"   
         {:tag :li, 
          :attrs nil,
          :content  
          ({:tag :a,
            :attrs {:href "#"},
            :content ("Placeholder for navigation")})}
         "\n\t  ")} 
       "\n\t")}
     "\n  ")}
   "\n\n")})
nil

トラックバック(0)

トラックバックURL: http://somethingnew2.com/cgi/b/mt-tb.cgi/1273

コメントする

この記事について

このページは、SATO Yozoが2013年11月16日 13:03に書いた記事です。

ひとつ前の記事は「enlive のサンプル」です。

次の記事は「ついうっかり port ugrade したら Rails 起動時にエラー」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

ウェブページ

OpenID対応しています OpenIDについて
Powered by Movable Type 6.1.2