純粋なHTMLコードおよび/またはHTML + JavaScript + CSSを使用してWebサイトを表示する方法を理解していません。
Hello Worldと書かれているHTMLファイルをロードしようとしました。
私はDjangoも使用してそれを行うことができますが、後でCSS + JavaScript + HTMLで自分のWebサイトを表示したいと思います。
ビューファイルでこのコードを実行します。
# Create your views here.
from Django.http import HttpResponse
from Django.template import Context, loader
def index(request):
template = loader.get_template("app/index.html")
return HttpResponse(template.render)
ただし、Webサイトに表示されるのは次のとおりです。
>
そこでrender
メソッドを呼び出していませんか?
比較する:
template.render
template.render()
ファイルがDjangoテンプレートではなく、プレーンHTMLファイルである場合、これが最も簡単な方法です。
from Django.shortcuts import render_to_response
def index (request):
return render_to_response('app/index.html')
CSSファイルとJSファイルが静的な場合、Django=を使用してそれらを提供しないでください。または 静的ファイルとして提供
動的なコンテンツを持たない固定ファイルだけであれば、HTMLでも同じことができます。 汎用ビュー を TemplateView とともに使用して、このような行をurls.py
:
url(r'^path/to/url', TemplateView.as_view(template_name='index.html')),
HttpResponse
を使用すると、データのみを送信できます。htmlファイルを使用する場合は、render
またはrender_to_response
次の方法で...
from Django.shortcuts import render
def index(request):
return render(request, 'app/index.html')
または
from Django.shortcuts import render_to_response
def index (request):
return render_to_response('app/index.html')
from Django.http import HttpResponse
from Django.template import loader
def index(request):
template=loader.get_template('app/index.html')
return HttpResponse(template)
まず、テンプレートの設定を行う必要があります。
rootdirectoryに「templates」フォルダーを作成します。ここで、manage.pyはプロジェクトの作成後に配置されます。次に、settings.pyに移動し、TEMPLATESセクションでテンプレートフォルダーのディレクトリを入力します。プロジェクトを友人に送信すると、友人はそれを実行できないため、ハードコーディングはお勧めしません。次のようになります。
TEMPLATES = [
{
'BACKEND': 'Django.template.backends.Django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR,"templates")],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'Django.template.context_processors.debug',
'Django.template.context_processors.request',
'Django.contrib.auth.context_processors.auth',
'Django.contrib.messages.context_processors.messages',
],
},
},
]
home.htmlとabout.htmlがテンプレートフォルダーにあると仮定します:
rls.py
from Django.contrib import admin
from Django.urls import path
from . import views
urlpatterns = [
path('admin/', admin.site.urls),
path('about/',views.aboutview),
path('',views.homeview),
]
views.py
from Django.http import HttpResponse
from Django.shortcuts import render
def aboutview(request):
return render(request,"home.html")
def homeview(request):
return render(request,"about.html")