使用Django创建第一个项目

yizhihongxing

使用Django创建一个新项目非常简单,只需要按照以下步骤操作即可:

安装Django

在终端中输入以下命令来安装Django:

pip install django

创建新项目

在终端中输入以下命令来创建一个新的Django项目:

django-admin startproject mysite

这会在当前目录下创建一个名为“mysite”的新目录,其中包含以下文件:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py
  • manage.py:Django应用程序管理器的命令行接口,用于执行各种操作,例如运行开发服务器、创建数据库模式等等。
  • mysite/:项目的实际Python包,它是项目的主要名称空间。
    • __init__.py:一个空文件,告诉Python这是一个Python包。
    • settings.py:包含项目的配置选项,例如数据库连接,静态文件和媒体文件路径等等。
    • urls.py:定义应用程序的URL模式,将请求映射到视图函数。
    • asgi.py:ASGI服务器入口,用于支持异步Web服务。
    • wsgi.py:WSGI服务器入口,用于支持传统的同步Web服务。

运行开发服务器

在终端中进入项目目录,并运行以下命令以启动Django开发服务器:

cd mysite
python manage.py runserver

这将启动一个本地开发服务器,它将监听localhost:8000,并提供Django应用程序。

如果您要使用不同的IP地址和端口,可以使用以下命令:

python manage.py runserver 0.0.0.0:8080

这会将开发服务器绑定到0.0.0.0(意味着所有可用的IP地址)和端口8080。

创建新应用程序

除了项目本身之外,Django还有许多小型应用程序,这些应用程序可以交互并共享项目数据。在Django中,应用程序通常指的是某个功能单元(例如博客、新闻等)。要创建新的应用程序,请运行以下命令:

python manage.py startapp myapp

这将在项目目录中创建一个新的应用程序,名为“myapp”,其中包含以下文件:

myapp/
    __init__.py
    admin.py
    apps.py
    models.py
    tests.py
    views.py
    migrations/
        __init__.py
  • __init__.py:一个空文件,告诉Python这是一个Python包。
  • admin.py:管理该应用程序的模型,在后台管理模块中可以使用。
  • apps.py:定义应用程序配置,告诉Django如何处理该应用程序。
  • models.py:定义应用程序的数据模型,以及它们如何在数据库中存储。
  • tests.py:编写应用程序级别的单元测试。
  • views.py:定义应用程序中的视图函数,处理HTTP请求并返回HTTP响应。
  • migrations/:应用程序的更改记录(此文件夹最初为空)。

编写视图函数和路由

在Django中,视图函数处理HTTP请求,并返回HTTP响应。URL代码将HTTP请求映射到正确的视图函数。创建视图函数和URL模式的步骤如下:

1.在myapp/views.py文件中,创建一个简单的函数hello(request),该函数接收一个传入的HTTP请求,并返回一个文本响应。

from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello, World!")

2.在myapp/urls.py文件中,添加一个URL模式,将根URL映射到hello视图函数。

from django.urls import path
from . import views

urlpatterns = [
    path('', views.hello, name='hello'),
]

3.更新mysite/settings.py文件,包括myapp作为已安装应用程序之一,并将myapp/urls.py文件中的URL模式包含在项目的URL模式中。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp',
]

...

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

运行开发服务器并检查结果

在终端中,重新启动Django开发服务器,并访问http://localhost:8000/。

您将看到响应“Hello, World!”,这是视图函数hello()返回的字符串。恭喜你,你已经成功创建了第一个Django应用程序!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Django创建第一个项目 - Python技术站

(0)
上一篇 2023年3月12日
下一篇 2023年3月12日

相关文章

  • ubuntu下Django的搭建

    工具:Window下的pycharm 、VirtualBox下的Ubuntu系统、非必需的Xshell(远程连接工具) 现在针对各种包或python版本不能共存或包不能很好下载的问题,开始流行使用虚拟环境来解决这个问题,所有第一步我们要在Ubuntu下新建一个虚拟环境,当然不新建虚拟环境也是可以的。 Linux下输入workon查看已有的虚拟环境,我的已有两…

    Django 2023年4月13日
    00
  • Django实现邮件的发送(含源码)

    Django是一个Python Web框架,提供了极为强大的发送电子邮件的能力。下面将详细阐述Django如何实现邮件的发送。 配置邮件设置 在Django的settings.py文件中,添加以下配置: EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_…

    Django 2023年3月13日
    00
  • django中只使用ModleForm的表单验证,而不使用ModleForm来渲染

    主题 众所周知,django.forms极其强大,不少的框架也借鉴了这个模式,如Scrapy。在表单验证时,django.forms是一绝,也是面向对象的经典表现。但要用它来渲染表单那就不好玩了,除非写框架。本文章主要缕一缕如何使用django.forms来做表单验证。 django项目基本信息 models.py from django.db import…

    Django 2023年4月10日
    00
  • django-vue项目部署

    上线部署准备工作 安装mysql 安装redis   安装: apt-get install redis-server  从进程中查看是否启动: ps -aux|grep redis 端口 6379 安装nginx   安装: sudo apt install nginx​   systemctl status nginx 查看nginx的状态   syst…

    2023年4月10日
    00
  • Django是什么?能做什么?

    Django是一个开源的Python Web框架,它提供了一组强大的工具和库,使得开发Web应用程序变得更加容易和快速。 Django遵循MVC(Model-View-Controller)的设计模式,其核心思想是将应用程序的不同组件分离,从而使得应用程序更加可维护和可扩展。 Django具有以下特点: 完整的开发框架:Django提供了很多组件,如ORM、…

    2023年3月11日
    00
  • [django]django配合前端vue前后端联调,django服务端解决跨域(django-cors-headers)

    https://www.cnblogs.com/iiiiiher/articles/9164940.html 前端写了个页面,里面$.post发现403错误. 需要注释下 前后端联调的跨域问题 前端可能是127.0.0.1:3000 后端127.0.0.1:8080导致前端不能正常访问 https://github.com/ottoyiu/django-co…

    Django 2023年4月10日
    00
  • django之百度Ueditor富文本编辑器后台集成

    Python3 + Django2.0 百度Ueditor 富文本编辑器的集成 百度富文本编辑器官网地址:http://fex.baidu.com/ueditor/   疑问:为什么要二次集成? 答案:因为百度富文本编辑器Ueditor没有对python的支持   步骤1:   在官网下载Ueditor的任意版本代码:http://ueditor.baidu…

    Django 2023年4月13日
    00
  • Django2.2配置xadmin的实现

    下面是详细的“Django2.2配置xadmin的实现”的攻略,包含两个示例: 简介 XAdmin是一个基于Django的第三方管理后台框架,它提供了很多方便的功能,如内置了Bootstrap、jQuery、font-awesome等前端框架,同时支持主题定制和插件扩展等功能。下面让我们来详细讲解一下如何在Django2.2中配置XAdmin。 准备工作 在…

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