5

まず、私はDjangoを完全に新しくしました。私はできるだけよく学んでいます。私は "Beginning Django E-Commerce"という本を通して自分の道を進んでいます。コピー権を侵害することなく、おそらくあなたは私が間違っていた場所を見つけることができます。 私はDjango 1.4.3を使用していますが、私が使っている本はおそらくDjango 1、おそらく1.1のために書かれていますが、ここにはあります。djangoは空白のページをレンダリングします

私base.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "XHTML1-s.dtd" > 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>{% block title %}{% if page_title %}{{ page_title }} - {% endif %} 
      {{ site_name }}{% endblock %}</title> 
    <meta name="keywords" content="{{ meta_keywords }}" /> 
    <meta name="description" content="{{ meta_description }}" /> 
</head> 
<body> 
    {% block site_wrapper %}{% endblock %} 
</body> 
</html> 

私catalog.html:

{% extends "base.html" %} 

{% block site_wrapper %} 
<div id="main"> 
    <a href="#content" class="skip_link">Skip to main content</a> 
    <div id="banner"> 
      <div class="bannerIEPadder"> 
        <div class="cart_box"> 
          [link to cart here] 
        </div> 
        Modern Musician 
      </div> 
    </div> 
    <div id="navigation"> 
      <div class="navIEPadder"> 
        [navigation here] 
      </div> 
    </div> 
    <div id="middle"> 
      <div id="sidebar"> 
        <div class="sidebarIEPadder"> 
          [search box here] 
        <br /> 
          [category listing here] 
        </div> 
      </div> 
      <div id="content"> 
        <a name=”content”></a> 
        <div class="contentIEPadder"> 
          {% block content %}{% endblock %} 
        </div> 
      </div> 
    </div> 
    <div id="footer"> 
      <div class="footerIEPadder"> 
        [footer here] 
      </div> 
    </div> 
</div> 
{% endblock %} 

私のindex.html:

{% extends "catalog.html" %} 

{% block content %} 
    <h2>Welcome!</h2> 
{% endblock %} 

これらのファイルのすべてが中に保存されていますテンプレートディレクトリ。この時点での本は、私は、次のコマンドを実行します示唆:

python manage.py startapp preview 

と私urls.pyを調整します

urlpatternsの=パターン( ''、 ... (R '^カタログ/ $'

from django.shortcuts import render_to_response 

def home(request): 
    return render_to_response("index.html") 
: 'preview.views.home')、)

は、プレビューディレクトリの下にviews.pyを調整します

そして、あなたが言うページを参照してくださいすることができるはずです。

がメインコンテンツへ こちらカートへのリンク] 現代のミュージシャン [ここにナビゲーション] [ここで、検索ボックス] [商品一覧はこちらカテゴリをスキップします] ようこそ! [フッターはこちら]

しかし、すべてが空白のページです。なぜ誰かが働くことができますか? (それは本が単に古くなっている可能性があります)空白のページのソースを見るとき。

これは実質的にbase.htmlの空白のレンダリングです。開発サーバーでは、私はエラーがない:

python manage.py runserver localhost:8000  (wd: ~/websites/ecomstore) 
Validating models... 0 errors found Django version 1.4.3, using settings 'ecomstore.settings' 
Development server is running at http://www.localhost.com:8000/ Quit the server with CONTROL-C. 
[01/Apr/2013 02:13:06] "GET /catalog/ HTTP/1.1" 200 352 
[01/Apr/2013 02:13:08] "GET /catalog/ HTTP/1.1" 200 352 
[01/Apr/2013 02:13:09] "GET /catalog/ HTTP/1.1" 200 352 
[01/Apr/2013 02:33:33] "GET /catalog/ HTTP/1.1" 200 352 

full list of my steps, please see this site

+0

をviews.py実行あまりにも空のページのソースですか? – wRAR

+1

なぜあなたは自分を苦しめていますか? Djangoはあなたが基本を理解するための優れた初心者チュートリアルを持っている... https://docs.djangoproject.com/en/1.4/intro/tutorial01/ – Ngenator

+0

@Ngenatorああ、私はチュートリアルを完了しました。 :-)この本は、Webショップを構築する方法を教えています。 – LeeO

答えて

0

は、あなたがしているので、あなたの問題は次のようになりあなたcatalog.htmlまたはbase.htmlで{%ブロックのコンテンツ%}を挿入してくださいカタログ<ベースから継承し、それらのテンプレートにはレンダリングのためにブロックがありません。

0

Answer to is question is human error。私はコードの型を持っていた、おそらく間隔の問題(悲しいことに私は日食を使用していない)。これに答えて、ハードに読んで、投稿する前にすべてをダブルチェックしてください。そうすれば、(私のような)非常に礼儀を払わなければなりません。私は下から這い出したジャンゴの岩の下に隠れることになっている! ハッピーコーディング!

0

まずあなたがactualy存在して作られたアプリジャンゴを教えてください。その後、あなたはメインディレクトリに移動し、urls.pyを実行し、このURLを追加する必要があります

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'preview.apps.PreviewConfig', 
] 

を:: はsetting.pyとInstalled_appに移動し、次のようにそこにアプリを含めるために行く

from django.conf.urls import url,include 
from django.contrib import admin 

urlpatterns = [ 
    url(r'^$', include ('preview.urls')), 
    url(r'^admin/', admin.site.urls), 
] 

後これは、プレビューフォルダにpythonファイルを作成し、urls.pyと呼ぶ必要があります。プレビューアプリケーションのurl pattenを定義する必要があります。

from django.conf.urls import url 
from . import views 


urlpatterns = [ 
url(r'^$', IndexView.as_view()), 
] 

最後のステップは、あなたがプレビューでのviews.pyに行くことを行うため.INビューを定義する必要がありますされているフォルダと

from django.views.generic import TemplateView 

class IndexView(TemplateView): 
    template_name = "index.html" 
関連する問題