当前位置: 首页 > 网络应用技术

如何关联Django框架的文件(2023年最新共享)

时间:2023-03-08 20:54:55 网络应用技术

  简介:本文的首席执行官注释将介绍与Django框架有关的文档的相关内容。我希望这对每个人都会有所帮助。让我们来看看。

  数据库可以使用表单文件。关于数据库的代码在模型文件中。它只能是表格和模型之间的关系。在表单文件中,添加一个内部类元。

  当使用django命令生成项目的基本结构时,配置信息将保留在settings.py文件中,以与项目目录同名目录的目录中。在实际开发中,对于一个项目,这通常是不合适的。将设置配置文件授予几个文件。将在线使用的文件放在base.py文件中,在product.py文件上的在线文件,开发测试文件放在devert.py fileessencethis函数部门中很明确,这对于我们的在线和离线调试非常方便。

  1)在同名项目中,创建一个设置包(目录中包含__init__.py的文件夹)。

  2)在设置软件包中创建三个新文件:public base base.py(用于配置django默认配置文件),develop.py(用于开发环境)和product.py(用于生产环境)。

  3)将原始设置的内容复制到base.py文件。

  4)确认目录确定后,我们需要在base.py中修改时区和语言配置:

  如果需要修改类似的公共零件,则可以在base.py(例如注册表应用程序)中修改它,这里没有示例。

  5)之后,对于不同的在线和离线零件,我们只能导入base.py模块并将其修改为不同零件。例如,在线和离线对接不同的测试数据库,我们可以修改数据库连接:

  6)修改Manage.py文件。使用自己的服务开始时,Django需要知道设置文件的路径。

  7)生产时,请使用asgi.py(在django3.x中)或wsgi.py(django2.x版本),您可以更改生产配置文件的路径:

  上述问题也有问题。如果在线和离线环境切换,我们需要更改代码,我们可以通过设置系统环境变量来动态获取它,以避免修改代码:

  这样,Django通过在系统环境变量中读取Lipin_profile来加载不同的设置文件。

  这可以删除原始设置.py文件!交叉

  但是会有一个问题。您会发现我们无法访问以前的好网页,也找不到模板!

  这是因为在先前的配置文件中,路径问题,因为我们的原始配置文件以同一名称为单位,现在我们被分为一个新软件包,因此我们需要转到第一级目录是我们需要的。

  安装软件

  安装Python 2.7,Pycharm,PIP(Python软件包管理工具),Django(pip install django)

  部署

  Pycharm新Django项目

  完成后,目录如下:

  sub -directory medjangoproject指示该项目的全局配置,即setttings.py,urls.py和wsgi.py.其中,setttings.py包括系统数据库配置,应用程序配置和其他配置,以及urls.py是

  指示Web工程URL映射的配置。

  子目录学生是在项目下创建的一个应用程序,包括models.py,tests.py,views.py和其他文件

  模板目录是模板文件的目录

  Manage.py是Django提供的管理工具。

  启动

  创建完成后,可以正常启动。单击运行按钮以开始时机错误:

  Trackback(最近的最新电话):

  文件“ d:/workspace/mydjangoproject/manage.py”,第10行,在模块中

  execute_from_command_line(sys.argv)

  文件“ d:python27libsite-packagesdjangocooranagements__init__。py”,第338行,在execute_from_commman_line中

  utility.execute()

  文件“ d:python27libsite-packagesdjangocoranagements __init __. py”,第312行,在执行中

  django.setup()

  文件“ d:python27libsite-packagesdjango__init __. py”,第18行,在设置中

  apps.populate(settings.installed_apps)

  文件“ d:python27libsite-packagesdjangoapps egistry.py”,第89行,人口

  “重复:%s”%app_config.label)

  django.core.exceptions.improperlyconfigured:应用程序标签不是唯一的,重复:admin

  它应该是配置冲突,打开settings.py文件,并发现重复管理员配置

  instasted_apps =((

  'django.contrib.admin',

  'django.contrib.auth',

  'django.contrib.contenttypes',

  'django.contrib.sessions',

  'django.contrib.messages',

  'django.contrib.staticfiles',

  'django.contrib.admin',

  '学生',

  治愈

  评论丢失后(为什么有这个问题,估计它是一个错误),重新启动,确定

  Web项目添加页面

  目前,我们尚未编写一行代码,并且程序正在运行!添加一个Hello World页面。

  打开学生/views.py文件,输入以下内容

  def sayhello(请求):

  S ='Hello World!'

  current_time = dateTime.dateTime.now()

  html ='htmlhead/headbody1%s/h1p%s/p/p/p/html'%(s,current_time)

  返回httpresponse(HTML)

  打开url.py文件,您需要配置URL映射:

  url(r'^student/',sayhello)

  当用户输入http:// **/站立时,调用了Sayhello方法。此方法通过httpresponse()返回页面内容作为响应。

  重新启动服务,访问

  在views.py页面上,该页面所需的元素需要调用httpresponse()类作为对浏览器的响应。相对较大。如果我们需要显示一些动态数据并且页面基本不更改,该怎么办?

  例如,当用户面试时,我们想动态显示一些学生的数据。您可以做到这一点:

  首先,在模板目录中,创建一个新的sut剂节.html文件。该文件用作模板。内容如下:

  呢Doctype HTML

  html

  头

  标题/标题

  /头

  身体

  Ul

  {学生中的学生%}

  李

  id:{student.id}},名称:{{student.name}},年龄:{{student.age}}

  /li

  {%endfor%}

  /ul

  /身体

  /html

  修改views.py文件,添加方法showstuders()

  Def ShowStudents(请求):

  list = [{id:1,'name':'jack'},{id:2,'name':'rose'}]

  返回render_to_response('Student.html',{'sustemans':list})

  该方法将列表用作动态数据,并将其绑定在render_to_response方法上与模板页面sutper.html。

  添加URL映射,URL(R'^ShowStudents/$',ShowStudents)

  修改设置.py模板配置:'dirs':[base_dir+r'emplates'],

  重新启动服务,访问,出现:

  在这一点上,我们通常可以将一些“动态”数据绑定到模板。但是如何访问数据库?

  从数据库中获取所需的数据,在页面上显示它?

  首先,您需要安装数据库驱动程序,即mysql_python,

  然后配置数据库连接:

  数据库= {

  '默认': {

  '引擎':'django.db.backends.mysql',

  “名字”:“学生”,

  “用户”:“根”,

  '密码':'1234',

  “主机”:'127.0.0.1',

  '端口':'3306',

  #'name':os.path.join(base_dir,'db.sqlite3'),

  }

  }

  配置完成后,您需要检测数据库配置是否正确。使用Manage.py Shell命令输入Shell Interactive接口:

  进入:

  来自django.db导入连接

  光标= Connection.Cursor()

  如果您不报告错误,则配置是正确的。

  创建一个模型,打开Models.py,然后定义模型如下:

  班级学生(型号。模型)

  id = models.bigintegerfield

  name = models.charfield(max_length = 20,默认值='a')

  然后致电manage.py syncdb

  在正常情况下,完成此步骤后,模型将与数据库一致。但是,在测试中,在成功执行命令后,发现未建立数据库。

  对于这种情况,请执行以下操作是正常的:

  (1)评论型号。文件代码,执行管理。

  [并管理。

  (2)打开注释并执行[manage.py makemurations Student and] manage.py迁移命令

  通过以上两个步骤,可以正常操作

  如何添加views.py:showrealstudents

  DEF SHOWREALSTUDENTS(请求):

  list = student.objects.all()

  返回render_to_response('Student.html',{'sustemans':list})

  urls.py添加映射URL(r'^showrealstudents/$',showrealstudents)

  重新启动服务并打开连接:

  页面输出是正常的。

  此时,使用Django可以正常操作数据库,自定义模板并在页面上显示数据。

  服务器

  由于Django配备了轻型服务器,因此默认使用服务器,但在实际生产中不允许这样做。在生产环境中,Apache HTTPD服务器与MOD_WSGI.SO相结合,作为后端服务器。

  以下部署环境是:Python2.7.6

  1.安装HTTPD-2.2.25-WIN32-X86-NO_SSL.MSI

  2.将下载的mod_wsgi.so放置在D:Program filesapache软件Foundationapache2.2Modules模块。

  3.在新建的Web项目中

  内容如下(需要修改相应的目录):

  导入操作系统

  导入系统

  djangopath =“ d:/python27/lib/site-ackages/django/bin”

  如果djangopath不在sys.path中:

  sys.path.append(djangopath)

  ProjectPath ='d:/workspace/mydjangoproject'

  如果项目路径不在sys.path中:

  sys.path.append(Project Path)

  apppath ='d:/workspace/mydjangoproject/mydjangoproject'

  如果AppPath不在sys.path中:

  sys.path.append(apppath)

  os.environ ['django_settings_module'] ='mydjangoproject.settings''

  来自django.core.wsgi import_wsgi_application

  应用程序= get_wsgi_application()

  4.修改httpd.conf,添加如下:

  loadModule wsgi_module模块/mod_wsgi.so

  wsgiscriptalias/“ d:/workspace/mydjangoproject/django.wsgi”

  目录“ d:/workspace/mydjangoproject/“”

  选项跟随Symlinks

  Allowoverride无

  命令拒绝,允许

  从所有人那里允许

  /目录

  好的,重新启动服务器,页面是正常的。

  在部署过程中,遇到一个例外,如下:

  在应用程序注册表准备之前,在应用程序注册表之前初始化翻译插管

  原因是django.wsgi从旧写作开始,可以写入新版本。

  Django为我们提供了许多开发说明,并且大多数乏味的操作由Django集成在简单的命令行提示符中。现在打开命令提示

  键入django-admin.py startproject之后

  新闻命令,致电Django的控制台命令创建一个名为News的新项目,同时,Django还在新的新闻文件夹下生成以下四个不同的文本,以生成不同劳动分区的不同文本。

  。

  1. __init__.py

  文件__init__.py可以向Python编译器指示当前文件夹的内容是Python Project模块。

  2. Manage.py

  Manage.py是一个Python脚本文件,与Django的命令行工具Django-Admin.py匹配以管理已建立的项目。

  3.settings.py

  这是Django项目的配置文件。与项目相关的工程模块和数据库的全局配置信息设置为settings.py。

  4.urls.py

  文件URLS.PY负责配置URL地址映射并管理URL的地址格式。

  建立新项目时,如果您迫不及待地想知道新项目的外观,Django准备了一个轻巧的Web服务器,供您在开发过程中的任何时间进行测试和使用。

  开发人员只需要在命令提示符下输入项目目录,然后键入命令manage.py

  RunServer可以启动Web服务器以测试新建立的项目。如果没有错误启动,您可以看到以下提示消息:“开发

  服务器正在运行”

  这意味着当前的项目已经可以通过该计算机的8000端口访问。

  笔记:

  注意:

  (1)Python中的虚拟环境通过工具复制了系统上Python环境的一部分,并且两者是独立的。

  (2)Python中虚拟环境的优势在于,不同项目使用的Python解释器和环境可以隔离,不会互相影响。

  结论:以上是首席CTO注释给您的Django框架的所有内容。我希望这对每个人都会有所帮助。如果您想了解更多有关此信息的信息,请记住要收集对该网站的关注。