1

テンプレートファイルがどこにあるかを知るために、settings.pyにTEMPLATE_DIRが見つかりませんでした。

また、index.html (以下で確認できます) にアクセスすると、解析が機能しません (たとえば、以下のviews.py{{ title }}で確認できます)。

どうして( {{title }}) うまくいかないのですか?

私はそれを機能させるのにとても近いと思いますが、できません。

また、関連するトピックが SO に見つかりませんでした。

SO、私が見たいのはこれです:

ここに画像の説明を入力


しかし、私はこれを見ます:

ここに画像の説明を入力


index.html は次のようになります。

ここに画像の説明を入力


index.html ソース:

<!DOCTYPE html>
<html>
<body>

<h1>My First Heading</h1>

<div class="container">
   <h1>First Blog </h1>
   <h2>{{ title }}</h2>
   <h3>Posted on {{ date }} by {{ author }}</h3>
   <p>{{ body }}</p>
</div>

</body>
</html>


view.pyは次のようになります。

# Create your views here.

from django.shortcuts import render_to_response

from blog.models import posts

def home(request):
    return render_to_response('index.html' {'title :'My First Post'})
~


models.pyは次のようになります。

from django.db import models

# Create your models here.

class posts(models.Model):

    author = models.CharField(max_lenght = 30)
    title = models.CharField(max_lenght = 100)
    bodytext = models.TextField()
    timestamp = models.DateTimeField()

これが私が以前にしたことです:

Python 2.7.2 がインストールされている

user@domain.com [~]# python -V
Python 2.7.2

Django 1.5 がインストールされました

user@domain.com [~]# python
Python 2.7.2 (default, Mar 27 2013, 12:07:49)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from django import get_version
>>> get_version()
'1.5'

プロジェクト (django-admin.py startpriject mysite)の作成に問題がありました。

username@domain.com [~/www/domain/]# django-admin.py startproject mysite
-bash: django-admin.py: command not found

それはPATHの問題であり、最後に解決されました。SO のおかげで、プロジェクトの作成に成功しました

次に、models.py を次のように変更しました (単純なブログを作成するため)。

from django.db import models

# Create your models here.

class posts(models.Model):

    author = models.CharField(max_lenght = 30)
    title = models.CharField(max_lenght = 100)
    bodytext = models.TextField()
    timestamp = models.DateTimeField()

MySQL-python 1.2.4 がインストールされている

username@domain.com [~]# python
Python 2.7.2 (default, Mar 27 2013, 12:07:49)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>

私はmysqlデータベースユーザーを作成し、データベースにユーザーを追加し、すべての権限を与えました(すべてブルーホストのフロントエンドパネルで行いました)。

データベースの更新に問題がありましたが、

python manage.py syncdb

SOのおかげで、それも解決されました。

user@domain.com [~/www/domain/mysite]# python manage.py syncdb 
Creating tables ... 
Creating table auth_permission 
Creating table auth_group_permissions 
Creating table auth_group 
Creating table auth_user_groups 
Creating table auth_user_user_permissions 
Creating table auth_user Creating table django_content_type 
Creating table django_session 
Creating table django_site 

You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no):

( {{title }} ) が機能しないのはなぜですか?

何を変更すればよいですか?

何かを再インストールする必要がありますか?

4

3 に答える 3

1

Matthias がコメントで述べているように、実際に Django を呼び出しているようには見えません。これらは通常の Apache ディレクトリ インデックスです (当然、Django は呼び出されていないため、テンプレートを解析しません)。

./manage.py runserver始めたばかりなので、Apache をまったく使用しないで、チュートリアルで説明されているようにローカル開発サーバー ( ) を起動します。

于 2013-03-29T10:39:47.500 に答える
0

これを試して:

輸入品:

from django.shortcuts import render_to_response, RequestContext

Views.py:

 return render_to_response('index.html',  {'title' :Your_variable_name}, context_instance=RequestContext(request))

テンプレートで次のように呼び出します。

{{ title }}
于 2013-03-29T10:00:01.773 に答える
0

renderショートカットを使用する必要があります。

ビュー.py

from django.shortcuts import render

def my_view(request):
    return render(request, 'index.htm', {'title': 'Hey!'})

これには、RequestContext の使用を強制するコンテキストにリクエスト インスタンスを追加するという追加の利点があります。ここでそれについて読んでください: https://docs.djangoproject.com/en/dev/topics/http/shortcuts/#render

于 2013-03-29T10:04:39.617 に答える