📅  最后修改于: 2023-12-03 15:06:46.097000             🧑  作者: Mango
Django 是一个流行的 Python Web 应用程序框架。它简化了 Web 应用程序的开发过程,具有许多可扩展性和灵活性的功能,通过分层架构方便我们开发。本文将介绍如何使用 Django 创建一个新闻应用程序。
如果您还没有安装 Django,请使用以下命令:
pip install Django
在终端中运行以下命令创建一个 Django 项目:
django-admin startproject news
接下来,进入项目目录并创建新闻应用程序:
cd news
python manage.py startapp newsapp
在 Django 中,数据存储在模型中。我们需要定义一个新闻模型,如下所示:
from django.db import models
class News(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
def __str__(self):
return self.title
在这个模型中,我们定义了新闻的标题,内容,创建时间和最后更新时间。
在 Django 中,可以使用以下命令将模型同步到数据库:
python manage.py makemigrations
python manage.py migrate
在 Django 中,视图接受请求并返回响应。我们需要创建一个视图来显示新闻内容:
from django.shortcuts import render
from .models import News
def news_list(request):
news = News.objects.all()
return render(request, 'news_list.html', {'news': news})
在此视图中,我们从数据库中获取所有新闻,并将其传递给模板以显示。
模板显示视图中传递的数据。我们将创建一个名为 news_list.html 的模板来显示所有新闻:
{% for n in news %}
<h2>{{ n.title }}</h2>
<p>{{ n.content }}</p>
{% endfor %}
最后,我们需要将 URL 映射到视图上。打开 news/urls.py 文件并添加以下代码:
from django.urls import path
from .views import news_list
urlpatterns = [
path('', news_list, name='news_list'),
]
这将把根 URL 映射到 news_list 视图上。
现在,我们已经完成了所有的设置,可以使用以下命令运行 Django 应用程序:
python manage.py runserver
打开浏览器并访问 http://127.0.0.1:8000/,您将看到所有新闻的列表。
在本文中,我们学习了如何使用 Django 创建一个简单的新闻应用程序。我们定义了一个新闻模型,创建了一个视图来显示所有新闻,并设置了 URL。Django 包括了许多其他功能,可以用于创建更复杂的 Web 应用程序。