相关文章推荐

1. 安装命令:

pip install django==2.2.1

2. 检查是否安装完成

python -m django --version

3. 创建项目:

django-admin startproject JD735

4. 创建两个应用:

cd JD735
django-admin startapp user
django-admin startapp goods

5. 添加应用

此处有两个应用, 将来可能会有更多应用, 因此在mange.py的同级目录中新建一个apps目录, 并将usergoods两个目录移入apps目录中

  • 将两个应用添加到settings.py中的INSTALLED_APPS
# /JD735/settings.py
import sys
# 新增 配置系统路径
sys.path.insert(0, os.path.join(BASE_DIR, "apps"))
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'apps.user',  # 新增(注意前面添加了apps.)
    'apps.goods', # 新增

6. 配置URL

  • /JD735/urls.py中添加应用的url

这里的意思就是说:有个根URL, 其它应用的URL包含在根URL中,这样做的好处是:将来若更有更多应用, 更多URL需要管理, 使用这种方法管理起来比较方便些.

# /JD735/urls.py
from django.contrib import admin
from django.views.generic import TemplateView # 处理静态文件的view
from django.urls import path, include  #这里新引入了include模块
urlpatterns = [
    path('admin/', admin.site.urls),
    path('', TemplateView.as_view(template_name='index.html'), name='index'),  # 配置静态页面, 不需要任何view处理逻辑
    path('user/', include('user.urls', namespace="user")), # 这里应用了include模块
    path('goods/', include('goods.urls', namespace="goods")),  # 以此类推
  • 在应用自身的URL中添加自身的url规则,请注意django版本, 不同版本的url规则不一样,以下参考自django2.2官方文档
# apps/user/urls.py
from django.contrib import admin
from django.urls import path
from . import views
from .apps import UserConfig  # 此处应用了apps.py文件
app_name = UserConfig.name  # (推荐这种)这一步是必须的, 不然报错.
urlpatterns = [
    path('', views.index, name='index'),
    path('article/<int:user_id>', views.user_info, name='user_info'),
# apps/users/apps.py
from django.apps import AppConfig
class UsersConfig(AppConfig):
    name = 'users'
    verbose_name = '用户信息'  # 建议在此加上verbose_name, 将在admin后台管理系统中更加友好的展示

goods

# apps/goods/urls.py
from django.contrib import admin
from django.urls import path
from . import views
app_name = "goods"  # 或者使用更加直接的解决方法(不推荐)
urlpatterns = [
    path('', views.goods_list, name='goods_list'),
    path('article/<int:goods_id>', views.goods_info, name='goods_info'),

7. template

7.1 模版冲突

django 按照 5 里的添加顺序查找templates, 不同APP下template的同名html文件会造成冲突,导致页面错误

解决方案:

在应用的templates目录下, 创建以APP名为名称的目录, 将html文件放入新创建的目录下即可.

/goods/templates/goods/goods_list.html中用到的商品列表

    {% for goods in goods_list %}
    <a href="{% url 'goods:goods_list' goods_id %}"> {{ goods.goods_name }} </a>
    {% endfor%}

7.2 模版过滤器

{{ value | filter1 | filter2 …}}

8. models(ORM)

一个model对应一张数据表, 在django中models以类的形式表现
它包含了一些基本字段以及数据的一些行为

# apps/user/models.py
from django.db import models
import arrow
class user(models.Model):
    user_name = models.CharField("用户名", max_length=32)
    user_address = models.TextField("收件地址", null=True)
    user_pwd = models.CharField('密码', max_length=16)
    create_time = models.IntegerField('创建时间', max_length=11)
    # 建议为每个MODEL配置Meta信息
    class Meta:
        verbose_name = '用户信息'   # 别名
        verbose_name_plural = verbose_name  # 复数形式的别名,若没有这个配置,将导致admin后台,出现`用户信息s`这样的格式

goods.Model 略

以上内容完成后, 在命令行中运行以下两条命令, 用以生成数据表

python manage.py makemigrations [user] 
python manage.py migrate  

9. 强大的后台,admin

python manage.py createsuperuser
输入用户名:admin
输入密码:admin123
# /JD735/settings.py
以下配置,将影响admin后台管理系统
# 默认值
# LANGUAGE_CODE = 'en-us'
# TIME_ZONE = 'UTC'
# 修改后的值, 作用是将admin后台改为中文,两种写法都可以
# LANGUAGE_CODE = 'zh-Hans'
LANGUAGE_CODE = 'zh-hans'
# 修改后的值, 作用是修改时区为中国时区
TIME_ZONE = 'Asia/Shanghai'
# 关于时区的配置,不要使用默认的时区
# USE_TZ = True 这是django 默认的,要改为False 
USE_TZ = False

下一步要做的是:将生成的app注册到django后台管理系统中,

# apps/user/admin.py
# 方法1
from django.contrib import admin
from .models import Reporter, Article
class ArticleAdmin(admin.ModelAdmin):
    list_display 是需要展示的字段
    list_filter
    list_display = ("headline", "content", "pub_time", "reporter")
    list_filter = ('pub_time', "reporter")
    search_fields= (
        'reporter',
class ReporterAdmin(admin.ModelAdmin):
    list_display = ("full_name",)
admin.site.register(Reporter, ReporterAdmin)
admin.site.register(Article, ArticleAdmin)
# 方法2(推荐):
# apps/user/admin.py
from django.contrib import admin
@admin.register(Article)
class ArticleAdmin(admin.ModelAdmin):
    list_display = ("headline", "content", "pub_time", "reporter")
    list_filter = ('pub_time', "reporter")
    search_fields= (
        'reporter',

10 settings.py文件配置使用说明

#settings.py
# 数据库相关配置
# default sqlite3
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
# use mysql
# 将下面的{}按相应的内容写入即可
# 注意mysql-python驱动的安装
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': {database_name},
        'HOST':{host},
        'USER':{user},
        'PASSWORD':{password},
        'PORT':{port}, 
                    文章目录1. 安装命令:2. 检查是否安装完成3. 创建项目:4. 创建两个应用:5. 添加应用6. 配置URL7. template7.1 模版冲突解决方案:7.2 模版过滤器8. models(ORM)9. 强大的后台,admin10 `settings.py`文件配置使用说明11. 分页功能12.个人总结的 项目开发流程1. 安装命令:pip install django == 2.2....
STATIC_URL = '/static/'
# 配置静态资源的放置目录
STATICFILES_DIRS = [os.path.join(BASE_DIR,"static"),]
  接着在项目根目录下创建static目录,再创建images、css、js目录,并在images中保存一张照片;
				
开发了两个月的Django正式上线了,看着网站从无到有,从前端到后台,从本地开发到环境部署,一一滴的堆砌成型,着实带给我不小的乐趣。 Django介绍: 开发环境:阿里云服务器centos6.5 + Nginx1.7 版本: Django1.8 + Python3.4 这是一个集合订阅内容&个人博客的Django项目。 目前项目集成: | - 1.订阅功能:自动订阅虎...
<h3>回答1:</h3><br/>Python是一种非常流行的编程语言,它可以支持各种类型的应用程序开发,并且有着优秀的编码效率和代码可读性,因此被广泛应用。而Django作为Python语言下最流行的开源Web应用程序框架之一,被广泛应用。那么Python Django项目源码是指针对Django框架而言的项目源码。在实际应用开发中,需要根据具体的需求设计开发各种类型的Django项目,包括Web应用、社交应用、电子商务应用等等,并且这些应用之间还存在很大的差异。具体的Python Django项目源码需要根据项目类型、功能模块、技术架构等因素来进行设计、开发和实现。 Python Django项目源码的核心包括后端业务逻辑处理、数据库设计和管理、前端交互设计等三个部分。而其中最重要的是后端业务逻辑处理,需要编写完整的Django项目架构、视图函数、模型设计、表单设计等等。此外,还需要考虑如何优化项目性能,提高代码的复用性和可维护性,并且处理好各种异常情况等等。同时,前端部分也需要关注到用户体验,而具体实现可以使用 CSS、JavaScript等各种前端技术实现高级动画效果等等。 总之,通过Python Django项目源码的实现,可以加深对Django框架的理解和掌握,同时也能快速实现具体的应用开发,提高开发效率和应用程序性能。 <h3>回答2:</h3><br/>Python 语言特别适合于 Web 开发,这得益于其优秀的 Web 框架,比如 Django,它是一款 Python Web 开发框架,集成了很多便于开发的功能和工具,用于构建强大的 Web 应用,并且能够支持多个数据库,如 PostgreSQL,MySQL,SQLite 等。下面是 Python Django 项目源码的一些介绍。 Django 项目源码通常包含以下文件和目录: 1. `manage.py` 文件:一个用于启动 Django Web 应用的命令行工具,可以执行一些常用的操作,如创建数据库、迁移数据等。 2. `settings.py` 文件:Django 应用程序的主要设置文件,包含了并配置了系统的所有组件,例如数据库、模板、静态文件等。 3. `urls.py` 文件:Django 应用程序的 URL 配置文件,通常配置了应用程序的路由映射。 4. `views.py` 文件:Django 应用程序的视图文件,包含的函数用于处理 URL 请求并且返回 Web 页面,视图可以使用 templates 和其他 Python 库来创建返回的页面。 5. `models.py` 文件:Django 应用程序的模型文件,定义了应用程序中使用的数据模型,并且对于这些模型想数据库中的表进行创建和管理。 6. `templates` 文件夹:Django 应用程序的 HTML 页面模板文件,这些文件通过传入视图中的数据来渲染成响应的页面。 7. `static` 文件夹:Django 应用程序的静态文件目录,包括 CSS, JS 和图片等。 8. `migrations` 文件夹:Django 应用程序的数据库迁移信息目录,通过对模型定义进行变更来管理数据库的升降级。 在 Django 项目开发时,我们通常会运用一系列的技术和工具,如 RESTful API、ORM 数据库模型、Redis 缓存、消息队列、Docker 容器等。同时,也可以使用 Django 的各种第三方插件和扩展,例如,Django REST framework、Django Celery 等。 总之,一份优秀的 Django 项目源码充满了创新、灵活性和可扩展性,可以轻松地用 Python 构建出一个威力强大的 Web 应用。 <h3>回答3:</h3><br/>Python Django 是一款十分流行的 Web 框架,可用于快速开发高效的 Web 应用程序。Django 项目源码包含在名为“Django”的 Python 包内,因此在开始编写 Django 项目之前,需要安装 Django 包。 Django 项目源码包括许多文件和文件夹,其中最重要的是项目的根目录文件夹。此文件夹包含用于配置 Django 应用程序的主要文件。其中,settings.py,urls.py 和 wsgi.py 文件是项目的核心文件,它们定义了项目的主要设置、路由和 Web 服务器接口。此外,根目录文件夹还包括名为 manage.py 的文件,它是 Django 项目的命令行工具。通过 manage.py 文件,您可以执行许多任务,例如启动项目、执行数据库迁移、运行测试等。 在项目根目录文件夹中,还包括一个名为 “apps” 的子文件夹,其中包含所有应用程序。每个应用程序都有自己的模板、静态文件和视图等,因此 Django 能够提供高度模块化且可重用的应用程序。应用程序的开发需要在此文件夹中创建相应的子文件夹。 在 Django 项目的开发中,大约90% 的工作都是编写 Python 代码,包括定义 Django 数据模型、视图函数、表单、信号等等。Django 使用一种名为 Model-View-Controller(MVC)的框架,通过将应用程序分解成数据模型、视图和控制器组件来实现这一目的。Django 鼓励开发人员使用易于阅读和可重用的 Python 代码,从而有效地提高项目的可维护性和可扩展性。 总之,Django 项目源码是一个高效且功能强大的 Web 框架,具有一组完整而易于理解且容易实现的开发工具。通过将代码编号模块化和重用最大化,Django 使 Web 应用程序的快速开发变得容易和高效。
 
推荐文章