5

次の手順を使用して、新しいUbuntu 12.04LTS VagrantボックスにDiazoをセットアップしました。

  1. apt-get update
  2. apt-get install python-setuptools
  3. apt-get install build-essential python2.7-dev libxslt1-dev
  4. easy_install -U diazo
  5. Diazo Quickstartの指示に従いました (最新のbootstrap.pyを追加)

クイック スタートの Diazo の例は正常に動作します ( to が少し追加read_network = trueされてい[filter:theme]ます)。

ただし、既存のプロジェクト (他のマシンで動作する) を追加するbin/paster serveと、サイトを表示しようとすると次のエラーが表示されます。

Exception happened during processing of request from ('192.168.33.1', 50171)
Traceback (most recent call last):
  File "/home/vagrant/test/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpserver.py", line 1068, in process_request_in_thread
    self.finish_request(request, client_address)
  File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib/python2.7/SocketServer.py", line 638, in __init__
    self.handle()
  File "/home/vagrant/test/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpserver.py", line 442, in handle
    BaseHTTPRequestHandler.handle(self)
  File "/usr/lib/python2.7/BaseHTTPServer.py", line 340, in handle
    self.handle_one_request()
  File "/home/vagrant/test/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpserver.py", line 437, in handle_one_request
    self.wsgi_execute()
  File "/home/vagrant/test/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpserver.py", line 287, in wsgi_execute
    self.wsgi_start_response)
  File "/home/vagrant/test/eggs/Paste-1.7.5.1-py2.7.egg/paste/urlmap.py", line 203, in __call__
    return app(environ, start_response)
  File "/home/vagrant/test/eggs/diazo-1.0b1-py2.7.egg/diazo/wsgi.py", line 353, in __call__
    transform_middleware = self.get_transform_middleware()
  File "/home/vagrant/test/eggs/diazo-1.0b1-py2.7.egg/diazo/wsgi.py", line 342, in get_transform_middleware
    tree=self.compile_theme(),
  File "/home/vagrant/test/eggs/diazo-1.0b1-py2.7.egg/diazo/wsgi.py", line 337, in compile_theme
    xsl_params=xsl_params,
  File "/home/vagrant/test/eggs/diazo-1.0b1-py2.7.egg/diazo/compiler.py", line 106, in compile_theme
    read_network=read_network,
  File "/home/vagrant/test/eggs/diazo-1.0b1-py2.7.egg/diazo/rules.py", line 164, in process_rules
    rules_doc = annotate_rules(rules_doc)
  File "/home/vagrant/test/eggs/diazo-1.0b1-py2.7.egg/diazo/utils.py", line 49, in __call__
    result = self.xslt(*args, **kw)
  File "xslt.pxi", line 556, in lxml.etree.XSLT.__call__ (src/lxml/lxml.etree.c:110044)
XSLTApplyError: 
            ERROR: Unknown includemode or @method attribute

展開ドキュメントincludemodesで提案されている別の設定を試みましたが、成功しませんでした。

私のプロジェクトと私が(現在)見つけることができるデモの唯一の違いは、私の拡張ルールを除いて、私が含めることですxmlns:xi="http://www.w3.org/2001/XInclude"

エラーの原因と修正方法を教えてください。

4

1 に答える 1

0

lxml で何とか同じ問題に直面しました。xml ファイルには何も含めないようにしてください。ただし、コードをファイルに直接書き込みます。

なぜこれが起こるのかまだわかりません!!

それがあなたにリードを与えることを願っています..

于 2013-06-14T21:06:55.513 に答える