我是新來的Python和Django,我已經通過構建博客的教程,我已經通過另一個教程,建立一個基於啤酒和啤酒廠的頁面。我的Django視圖和URL不匹配某處給我一個空白屏幕
雖然經歷了這個過程,但我在開始自己的項目的同時,第一頁列出了一些帶有鏈接的州,即第二頁列出了這些州內的特定城市。
從那裏我想鏈接到與該城市相關的第三個網站特定項目。前兩頁效果很好。然而,當我點擊城市名稱,無論我嘗試過什麼,我都會得到一個空白頁面。
我不能爲了我的生活找出我要去哪裏錯了。我不認爲我完全理解從views.py到urls.py到html的變量流。
也許有人可以給我一點指導,告訴我哪裏出錯了。再次請耐心等待,因爲我對Django很陌生,並且對python有一個簡單的把握。
class Meta(models.Model):
rcabbr = models.CharField(max_length = 15)
slug = models.SlugField(unique=False)
state = models.ForeignKey('State')
rc_state = models.CharField(max_length = 3)
oerp = models.CharField(max_length=18)
subgrp = models.SlugField()
sonus_pic = models.CharField(max_length=8)
ems = models.CharField(max_length=14)
agc = models.CharField(max_length=14)
def __unicode__(self):
return self.rcabbr
class State(models.Model):
name = models.CharField(max_length=2)
slug = models.SlugField(unique=True)
state_long = models.CharField(max_length=15)
owning_site = models.CharField(max_length=12)
def __unicode__(self):
return self.name
return self.state_long
和我的views.py
def StateAll(request):
statelist = State.objects.all().order_by("name")
context = {'states':statelist}
return render_to_response('statelist.html',context,
context_instance=RequestContext(request))
def RcView(request, rclist):
rcs = Meta.objects.filter(rc_state = rclist)
context = {'rc_list': rcs}
return render_to_response('rclist.html',context, context_instance=RequestContext(request))
def RateCenterView(request,rcviews): # = rcviews is passed from the URL conf
rcv = Meta.objects.filter(rcabbr = rcviews)
context = {'whatrcv': rcv}
return render_to_response('rcview.html',context, context_instance=RequestContext(request))
和我URLS.py
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
(r'^$', TemplateView.as_view(template_name='index.html')),
url(r'^meta/$', 'meta.views.StateAll'),
(r'^meta/(?P<rclist>.*)/$', 'meta.views.RcView'),
(r'^meta/(?P<rcviews>.*)/$', 'meta.views.RateCenterView'),
)
和代碼頁與頁 此列出了段的狀態
{% for state in states %}
<p><a href="/meta/{{ state.name }}/">{{ state.state_long }}</a></p>
{% endfor %}
這取S中的狀態,並列出了城市,與一些額外的東西在裏面只是嘗試
{% for rc in rc_list %}
<p><a href="/meta/{{ rc.slug }}">{{ rc }}</a></p>
<p>RateCenter Slug: {{ rc.slug }}</p>
<p>RateCenter RC_State: {{ rc.rc_state }}</p>
<p>RateCenter: {{ rc }}</p>
{% endfor %}
在這個頁面,多數民衆贊成打破
{% for rca in whatrcv %}
<p>RateCenter Slug: {{ rca.slug }}</p>
<p>RateCenter RC_State: {{ rca.rc_state }}</p>
<p>RateCenter: {{ rca }}</p>
{% endfor %}
沒有完全解決我的問題,但它導致我的答案。所以我做的是,按照你的建議更改了url和html鏈接,但仍然產生了空白。所以後退了一步,並在URL中的RcView行和html中的鏈接中添加了「/ state /」。然後在RcView html中的鏈接末尾添加一個簡單的「/」,並使其完美工作。謝謝Yogesh指導我正確的方向。 – user3255253 2014-09-20 14:51:06