Python之Web框架Django项目搭建全过程

下面是Python之Web框架Django项目搭建全过程的完整攻略。

1. 确定项目名称和目录结构

首先要确定项目的名称,比如"blog",然后在命令行终端中执行以下命令:

mkdir blog
cd blog

进入到项目目录中。

2. 创建虚拟环境

为了避免与其他项目的依赖冲突,建议使用虚拟环境。可以使用以下命令创建一个虚拟环境:

python3 -m venv venv

然后使用以下命令激活虚拟环境:

source venv/bin/activate

3. 安装Django

在虚拟环境激活后,可以使用以下命令安装Django:

pip install django

4. 创建Django项目

使用以下命令创建Django项目:

django-admin startproject blogproj
cd blogproj

这里我们把项目命名为"blogproj"。

5. 创建Django应用

使用以下命令创建Django应用:

python manage.py startapp blog

这里我们把应用命名为"blog"。

6. 编写视图函数和路由配置

blog/views.py文件中编写视图函数:

from django.http import HttpResponse

def index(request):
    return HttpResponse('Hello, world!')

然后在blogproj/urls.py文件中编写路由配置:

from django.contrib import admin
from django.urls import path
from blog.views import index

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', index),
]

7. 启动Django开发服务器

使用以下命令启动Django开发服务器:

python manage.py runserver

然后在浏览器中访问http://127.0.0.1:8000,就可以看到"Hello, world!"了。

示例1:创建模型类

blog/models.py文件中定义模型类:

from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    create_time = models.DateTimeField(auto_now_add=True)

然后使用以下命令同步数据库:

python manage.py makemigrations
python manage.py migrate

示例2:创建表单

blog/forms.py文件中定义表单类:

from django import forms

class ArticleForm(forms.Form):
    title = forms.CharField(max_length=200)
    content = forms.CharField(widget=forms.Textarea)

然后在blog/views.py文件中编写表单处理函数:

from django.shortcuts import render
from blog.forms import ArticleForm

def add_article(request):
    if request.method == 'POST':
        form = ArticleForm(request.POST)
        if form.is_valid():
            title = form.cleaned_data['title']
            content = form.cleaned_data['content']
            Article.objects.create(title=title, content=content)
            return HttpResponse('Article created.')
    else:
        form = ArticleForm()
    return render(request, 'add_article.html', {'form': form})

最后在blog/templates/add_article.html中编写模板代码:

<form method="post">
    {% csrf_token %}
    {{ form.as_p }}
    <input type="submit" value="Submit">
</form>

以上就是Python之Web框架Django项目搭建全过程的完整攻略和两条示例的说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python之Web框架Django项目搭建全过程 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Django项目部署之sqlite版本升级

    项目环境: centos7 django 2.2.10 问题描述: 使用了django 2.2.12版本开发项目,此版本对应的sqlite需要升级为3.8.0以上。 百度了不少解决方案,缺点:过程繁琐、重启centos后失效。 报错提示: django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or…

    Django 2023年4月11日
    00
  • django+celery +rabbitmq

    celery是一个python的分布式任务队列框架,支持 分布的 机器/进程/线程的任务调度。采用典型的生产者-消费者模型 包含三部分:1. 队列 broker :可使用redis ,rabbitmq ,或关系数据库作为broker 2.处理任务的消费者workers : 队列中有任务时就发出通知,worker收到通知就去处理 3.任务结果存储 backen…

    Django 2023年4月13日
    00
  • python框架django中结合vue进行前后端分离

    使用Python框架Django和JavaScript框架Vue结合进行前后端分离,能够提高开发效率,优化代码结构和分工。下面是一个详细的攻略,分为两个示例说明。 示例一:前后端分离项目创建 1. 创建Django项目 使用Django的脚手架 django-admin 可以快速创建一个Django项目,命令如下: django-admin startpro…

    Django 2023年5月16日
    00
  • django model设计与实际数据库表的对比

    # 文章class Article(models.Model): title = models.CharField(‘标题’, max_length=70) excerpt = models.TextField(‘摘要’, max_length=200, blank=True) category = models.ForeignKey(Category, o…

    2023年4月13日
    00
  • 详解Python的Django框架中的中间件

    下面是详解Python的Django框架中的中间件的完整攻略。 什么是中间件 Django中的中间件(middleware)是处理请求和响应的钩子类(hook-based classes),可以拦截请求并进行某些操作,如记录日志、检查用户登录状态以及实现缓存等。 中间件是一个独立模块,可以在Django的settings.py中通过MIDDLEWARE设置来…

    Django 2023年5月16日
    00
  • Django中使用缓存

    settings中的配置 CACHES = { ‘default’: { ‘BACKEND’: ‘django.core.cache.backends.filebased.FileBasedCache’, # 指定缓存使用的引擎 ‘LOCATION’: ‘path’, # 指定缓存的路径 ‘TIMEOUT’: 300, # 缓存超时时间(默认为300秒,No…

    Django 2023年4月15日
    00
  • 利用Pycharm + Django搭建一个简单Python Web项目的步骤

    下面是利用Pycharm + Django搭建一个简单Python Web项目的步骤的完整攻略: 1. 安装Pycharm和Django 首先需要在官网下载并安装最新版本的Pycharm和Django,可以通过Pycharm自带的插件来安装Django。 2. 创建Pycharm项目 打开Pycharm软件,点击顶部菜单栏的”File“选项,选择“New P…

    Django 2023年5月16日
    00
  • django+uwsgi+daphne+supervisor生产环境部署

    一、前言   在上一篇文章中项目中使用了webscoket进行实时通讯,但是生产环境又使用了django+nginx+uwsgi的部署方式,我们都知道uwsgi并不能处理websocket请求,所以需要asgi服务器来处理websocket请求,官方推荐的asgi服务器是daphne,下面将介绍详细的部署步骤。   二、软件安装   之前已经写过一一篇关于d…

    Django 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部