【问题标题】:Django: html without CSS and the right textDjango:没有 CSS 和正确文本的 html
【发布时间】:2015-09-08 01:52:47
【问题描述】:

首先,我正在尝试建立的这个网站是我的第一个网站,所以请放轻松。谢谢。无论如何,我的主页 home.html 是从 base.html 扩展而来的,而 joke.html 也是从 扩展而来的>base.html。主页工作得很好,但不是笑话页面。以下是我文件的一些部分,让您了解我希望我的系统如何工作:

views.py

def joke_page(request, joke_id):
    joke = Joke.objects.get(id=int(joke_id))
    return render(request, 'joke.html', {'joke': joke})

urls.py

urlpatterns = [
    url(r'^$', views.home_page, name='home_page'),
    url(r'^(?P<joke_id>[0-9]+)/$', views.joke_page, name='joke_page'),
]  

joke.html

{% extends 'base.html' %}

{% block header_text %}{{ joke.title }}{% endblock %}

{% block text %}{{ joke.text }}{% endblock %}

我想要的是以 jokes/1/ 结尾的 URL 以使用 joke.html 呈现具有正确 html 的页面。相反,它会呈现一个没有 CSS 或有 joke.title 和 joke.text 的页面另外,我注意到 jokes/1/ 没有找到任何东西:

DoesNotExist at /jokes/1/

Joke matching query does not exist.. 

我在数据库中有 20 个笑话,我可以通过 jokes/21/ 找到笑话/2/,这意味着他们的 id 发生了变化? :P 有 Django 经验的人可以指出我的(许多,毫无疑问)错误吗?谢谢!

编辑:第二个 urls.py

urlpatterns = [
    url(r'^$', jokes_views.home_page, name='home'),
    url(r'^jokes/', include(jokes_urls)),
    url(r'^admin/', include(admin.site.urls)),
]

【问题讨论】:

  • 您的 URL 规则均不匹配 /jokes/1,您拥有主页 / 和任何数字,例如 /1/。就是这样。
  • 看来问题出在ID上。您可能已经在数据库中删除并重新创建了对象,并且 ID 是自动递增的,这意味着您可能还没有您期望的 ID。使用工具直接访问您的数据库并查看对象的 ID。也作为@KlausD。说,我在您的网址中看到您没有网址jokes/1/,但您说您可以找到jokes/21/,所以我认为这是问题中的错误。
  • 我添加了另一个 urls.py 文件,它可能会清除一些东西......
  • 更好的是^(?P&lt;joke_id&gt;\d+)/$
  • 你是这样导入的,import jokes.urls as jokes_urls,我可以假设吗?

标签: python html css django url


【解决方案1】:

您是否在模板中使用 {% load staticfiles %}?

【讨论】:

  • 我从没想过会这么简单...谢谢,再次谢谢!
猜你喜欢
  • 1970-01-01
  • 2012-06-03
  • 2015-01-27
  • 1970-01-01
  • 1970-01-01
  • 2021-09-23
  • 2017-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多