Django教程:搭建第一个入门Web站点

我刚开始接触Django的时候,感觉太熟悉了。因为我大学毕业设计用的是Ruby On Rails写的一个网站,而Django和Rails,简直异曲同工,甚至连创建项目、迁移项目。我个人认为,就是像Rails的理念一样,"约定优于配置"。我现在仍然觉得,用Django就像回到了大学时代一样......

Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的 Web 服务。关于Django的设计,有人说是基于MVC,也有人说基于MVT,对此Django给出的解释是,管怎么命名,归根结底,还是要把事情做好。这种理念,我真的太喜欢了。

Django 最初被设计用于具有快速开发需求的新闻类站点,目的是要实现简单快捷的网站开发。接下来我们将通过这篇文章,简要介绍如何使用 Django 实现一个数据库驱动的网络应用。

PS: 有兴趣的同学可以去了解下Ruby语言及Rails框架,确实有些理念是蛮不错的,虽说,是小日子过得不错的国家开发的

1. 安装并创建Django项目

复制代码
pip install django

安装好Django后,我们可以使用脚手架来快速创建Django项目,在命令行中,进入你想要创建项目的目录,然后运行以下命令来创建一个Django项目:

复制代码
django-admin startproject poycode

这将在当前目录下创建一个名为poycode的文件夹,并在该文件夹中生成Django项目的基本文件结构。

shell 复制代码
│  db.sqlite3
│  manage.py
└─poycode
    │  asgi.py
    │  settings.py
    │  urls.py
    │  wsgi.py
    │  __init__.py

接下来我们进入poycode文件夹,运行以下命令来启动Django的服务:

bash 复制代码
cd poycode
python manage.py runserver

这将启动一个开发服务器并监听本地的8000端口。打开浏览器,输入http://localhost:8000,你将看到Django的默认欢迎页面。

2. 创建应用

在Django中,应用是构建一个网站的模块化组件。运行以下命令来创建一个新的应用:

shell 复制代码
python manage.py startapp article

这将在poycode目录下创建一个名为article的文件夹,其中包含了应用的基本文件结构。在article文件夹中,打开models.py文件并定义一个模型类。例如,创建一个简单的Post类,用来定义文章:

python 复制代码
from django.db import models

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

title、content、 pub_date 用来标识数据库字段名,同时也是Post类的属性,models.xxxField()包含很多数据库相关的设置。如设置主键、是否自增,是否可空,同样也可以通过指定,db_column来设置数据库的字段名。

3. 数据库迁移

在settings.py文件中,我们可以配置Django项目的数据库设置。例如,我们可以选择使用SQLite,MySQL或PostgreSQL等数据库引擎。如果你不指定数据库,Django默认会在你的项目目录下生成一个SQLLite3的数据库文件。 在article/models.py文件中,我们可以定义数据模型。并通过使用Django模型类来创建数据库表,并定义字段和关联。在命令行窗口中,运行以下命令并进行数据迁移: 诸如此类种种,真的跟Rails太像了...

shell 复制代码
python manage.py makemigrations
python manage.py migrate

4. 创建视图

article文件夹中,打开views.py文件并创建一个视图函数。例如,创建一个简单的index视图:

python 复制代码
from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, Poycode!")

5. 设置URL映射

poycode文件夹中,打开urls.py文件并设置URL映射。例如,将index视图映射到根URL:

python 复制代码
from django.contrib import admin
from django.urls import path
from article.views import index

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

上述代码中,可以看到admin/,这是Django已经为我们生成好的管理平台。

6.运行服务器并访问网页

运行开发服务器并打开浏览器,访问http://localhost:8000,你将看到Hello, Poycode!的输出。

这只是一个Django的入门教程,介绍了如何创建项目、应用、定义模型、编写视图和设置URL映射。Django拥有许多强大的功能,包括表单处理、用户认证、数据库查询等,你可以深入学习和实践,以进一步开发复杂的Web应用程序。Django文档写地也非常详细,大家也可以自行查阅。

相关推荐
ai小鬼头7 小时前
Ollama+OpenWeb最新版0.42+0.3.35一键安装教程,轻松搞定AI模型部署
后端·架构·github
萧曵 丶8 小时前
Rust 所有权系统:深入浅出指南
开发语言·后端·rust
老任与码9 小时前
Spring AI Alibaba(1)——基本使用
java·人工智能·后端·springaialibaba
华子w9089258599 小时前
基于 SpringBoot+VueJS 的农产品研究报告管理系统设计与实现
vue.js·spring boot·后端
星辰离彬10 小时前
Java 与 MySQL 性能优化:Java应用中MySQL慢SQL诊断与优化实战
java·后端·sql·mysql·性能优化
GetcharZp11 小时前
彻底告别数据焦虑!这款开源神器 RustDesk,让你自建一个比向日葵、ToDesk 更安全的远程桌面
后端·rust
jack_yin12 小时前
Telegram DeepSeek Bot 管理平台 发布啦!
后端
小码编匠12 小时前
C# 上位机开发怎么学?给自动化工程师的建议
后端·c#·.net
库森学长12 小时前
面试官:发生OOM后,JVM还能运行吗?
jvm·后端·面试
转转技术团队12 小时前
二奢仓店的静默打印代理实现
java·后端