0

私はdjango 1.4を使用しており、これまで無料のオンラインDjango Bookを主にフォローしてきました.私のフォルダー構造は次のようになります:

TestWebsite/
        TestApp/
                __init.py
                admin.py
                models.py
                views.py
        TestWebsite/
                Webpage_Templates/
                        homepage.html
                __init__.py
                settings.py
                urls.py
                views.py
        manage.py 

これまでのところ、TestWebsite サブディレクトリでビューをレンダリングしているだけなので、パスの問題は発生していません。

今、私ができるようにしたいこと(これがアプリの統合がうまくいかない場合は私を修正してください)は次のとおりです。

  • TestApp/views.pyの行return render_to_response("homepage.html", {})を 使用します
  • 次に、TestApp/views.pyTestWebsite/urls.pyにインポートして、それを urlpatterns に追加できるようにする必要があります。(同じ名前のビューを持つ2つのインポートがあることにも問題があると思いますか?)

私は settings.py you で行ったように使用することを考えPROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))ましたが、ディレクトリ構造を上下に移動する方法はまだわかりません。さらに、とにかく必要なパスではありませんが、Pythonのインポートステートメント(だと思います)であり、それらは実際には同じやかんではないと思いますか?あなたは私がこれに慣れていないと言うことができます。しっかりとしたご指導をよろしくお願いします!

4

1 に答える 1

2

テンプレートディレクトリが設定ファイルに設定されているため、最初の箇条書きを気にする必要がないことがわかりました。作成したアプリビューは、実装に違いがなく、Webpage_Templatesフォルダーのページを返すことができます。

2番目の箇条書きについては、urls.pyでの同じ名前の問題を防ぐために、次のように変更import viewsしました。

from views import * #Now instead of views.ShowTime i just use ShowTime

追加したアプリのビューにアクセスするには、

from TestApp.views import *

思ったよりずっと簡単です。

私の質問に答えるのは、多くのガイドがdjangoバージョン1.4より前のものであり、デフォルトのフォルダー構造が少し異なり、他の1.4の初心者が同じことを疑問に思ってこの質問に出くわす可能性があるためです。

ただし、誰かが私のソリューションをもう少し説明して拡張したい場合は、先に進んで回答を送信してください!

于 2012-06-22T10:47:06.660 に答える