django投票系统怎么改投(2023年最新解答)

导读:本篇文章首席CTO笔记来给大家介绍有关django投票系统怎么改投的相关内容,希望对大家有所帮助,一起来看看吧。

腾讯云python系列之部署Django流程

我的是centos系统

我们通过腾讯的控制台的登录按钮,进入到远程登录的界面,如图1为腾讯云的控制台界面。图2为登录以后的密码输入窗口

进入登录界面以后,会是图3这样子的情况,我们输入ls,会发现没有任何文件, 输入pip list 会提示没有安装pip,而输入python时,会显示默认安装了python2.7.5版本

一、首先我们要安装pip,根据自己的系统自行选择

centos类系统: sudo yum install python python-pip

ubuntu类系统:sudo apt-get install python python-pip

安装好以后pip list一下,看看都有哪些python安装包

二、安装django

我安装的Django版本为1.9.8的,根据自己的情况,更改后面的版本号

sudo pip install Django ==1.9.8

可能会出现图4这样的问题,原因是我们pip 版本太低,直接按照提示升级我们的pip

更新了pip以后,安装可能会出现如图5这样的问题,我们不要在==两边加空格,因为加空格会导致不识别django的版本。

安装完以后你会发现自己找不到Django放在哪里了,其实我的django被安装在了

/usr/lib/python2.7/site-packages/

并且我们要执行创建django的命令在django的bin目录下,如图6

/usr/lib/python2.7/site-packages/django/bin

进入到该目录下,运行django-admin.py startproject FirstProject,创建出FirstProject的项目。就会在该目录下创建出FirstProject这个项目,进入项目,运行python manage.py runserver

问题来了,我们运行以后,不要点击,这个是进不去的,我们应该通过腾讯云的公网ip来访问网站,但又有同学发现通过公网的ip也无法访问我们的网站,这是因为自己的腾讯云没有打开相应的端口,所以无法访问。开放端口在安全组这个选项,如图7

进入安全组,新建我们的开放端口,我开放的是80端口。如图8

开放端口后,我们重新python manage.py runserver 0.0.0.0:80,如图9

通过公网ip,就可以直接访问我们的网站了。如图10

django投票系统怎么改投(2023年最新解答)  第1张

什么是django?

Django是用Python开发的一个免费开源的Web框架,提供了许多网站后台开发经常用到的模块,使开发者能够专注于业务部分。并且囊括的Web应用部分可以用于快速搭建高性能、优雅的网站。并且提供了通用Web开发模式的高度抽象,通过DRY的理念为频繁进行的编程作业提供了快速解决方法。

Django能在开源发行之后吸引众多追随者,离不开它所具备的以下优点:

①齐全的功能。自带大量常用工具和框架,可轻松、迅速开发出一个功能齐全的Web应用。

②完善的文档。Django已发展十余年,具有广泛的实践案例,同时Django提供完善的在线文档,Django用户能够更容易地找到问题的解决方案。

③强大的数据库访问组件。Django自带一个面向对象的、反映数据模型与关系型数据库间的映射关系的映射器,开发者无须学习SQL语言即可操作数据库。

④灵活的URL映射。Django提供一个基于正则表达式的URL分发器,开发者可灵活地编写URL。

⑤丰富的模板语言。Django模板语言功能丰富,支持自定义模板标签;Django也支持使用第三方模板系统,如jinja2等。

⑥健全的后台管理系统。Django内置了一个后台数据管理系统,经简单配置后,再编写少量代码即可使用完整的后台管理功能。

⑦完整的错误信息提示。Django提供了非常完整的错误信息提示和定位功能,可在开发调试过程中快速定位错误或异常。

⑧强大的缓存支持。Django内置了一个缓存框架,并提供了多种可选的缓存方式。

⑨国际化。Django包含了一个国际化系统,Django组件支持多种语言。

icc2怎么打开数据

icc2怎么打开数据:

ICC2 常用命令

Java调用cmd命令 打开一个站点

用DOS命令打开IE浏览器、我的文档等等

学了C语言,如何利用CURL写一个下载程序?—用nmake编译CURL并安装

利用 vue-cli 构建一个 Vue 项目

利用 nodeJS 搭建一个简单的Web服务器(转)

利用maven构建一个spring mvc的helloworld实例

利用django创建一个投票网站(一)

Linux 利用进程打开的文件描述符(/proc)恢复被误删文件

自制工具:迅速打开一个Node 环境的Playground

Swift轻松入门——基本语法介绍和详细地Demo讲解(利用WebView打开百度、新浪等网页)

node项目的基本构建流程或者打开一个node项目的流程

利用VS2008发布一个简单的webservice

VirtualBox不能为虚拟电脑打开一个新任务——The VirtualBox kernel modules do not match this version of VirtualBox

「Django框架」-拆分配置文件settings

使用 Django 命令生成一个项目的基本结构时,配置信息默认保存在和项目目录同名的目录下的 settings.py 文件里, 在实际的开发中,对于一个项目而言,这样往往是不合适的,需要将 settings 配置文件拆分为几个文件, 线上和线下都会使用的文件放置到 base.py 文件里,线上的放置在 product.py 文件里,开发测试的文件放置在 develop.py 文件里。这样功能划分就明确了,方便我们线上线下的调试。

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

2)在 settings 的包中分别新建3个文件:公共基础 base.py (用于配置 Django 默认生成配置文件), develop.py (用于开发环境)、 product.py (用于生产环境)。

3)将原来的 settings.py 的内容复制到 base.py 文件中。

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

如果有类似公共部分需要修改的,则在 base.py 中修改即可,例如注册子应用之类的,在此就不一一举例。。

5)之后,对于线上线下不同部分,我们只要导入 base.py 模块,再针对不同部分进行修改即可,例如线上线下对接不同的测试数据库,我们则可以修改数据库连接:

6)修改 manage.py 文件, Django 使用自带服务启动时需要知道 settings 文件的路径。

7)到上生产的时候,使用 asgi.py ( Django3.x 中)或 wsgi.py ( Django2.x 以下版本),则可以更改生产配置文件的路径:

以上又有个问题,如果线上线下环境切换,又要改动代码, 我们可以通过设置系统环境变量来动态获取,避免修改代码:

这样通过读取系统环境变量中的 LIPIN_PROFILE 来控制 Django 加载不同的 settings 文件。

这样可以将原来的 settings.py 文件删掉!!

但是这样就会有个问题,你会发现之前好好的网页我们访问不了了,模板找不到!

这是因为之前的配置文件中,路径问题,因为我们原来的配置文件是在同名目录下,而我们现在将配置文件拆分为一个新的包,所以还要上一级目录才是我们需要的:

django的group_by

django 的ORM中并没有单独的group_by方法,而是通过values + annotate的方式来实现group_by.

eg. 假如我们有个visit_record表. 记录网页每天的访问记录。

id | page_url | domain | pv | uv | date

通过(page_url, domain)唯一确定一个系统。

当values和annotate一起用的时候,values的字段就自动承担起了group_by的作用。 这个语句相当于:

需要注意与order_by一起用的时候,如果order_by的字段不在所选字段中或order_by字段是无效的会导致group_by不生效。

例如上述语句的order_by改成 order_by(\'-pv\', \'id\') 会导致语句变成 ... group by id 。

想一下应该可以理解,因为group_by按照page_url和domain聚合之后,得到的记录是多条记录的pv之和,不存在对应的是哪个id的记录,所以没法按照id排序,所以会导致group_by失效。

参见官方文档:

Django 运行开发服务器时报错

原因如下:

1、因代码中的中文注释问题的报错

django项目的.py文件文件中加入了中文注释,经常会因此报错而导致无法运行,究其原因是编码的问题,最后的解决办法是直接在有中文注释的.py文件的顶部加上:# -*-coding:utf-8 -*-

2、运行过程中的中文乱码的报错

(1)首先确保连接的数据库的基础设置是utf-8。

(2)然后确认django项目中的网页头部设置编码为utf-8,网页头部加上代码:meta charset=\"utf-8\"。

(3)最后仍然报错就是因为django项目中我们没有指明编码方式,所以按照默认设置来,而非正常的utf-8。

(4)所以项目最后需要在进行编码操作的地方,或者直接在settings.py中加入:import sys reload(sys) sys.setdefaultencoding(\'utf-8\')。

3、项目配置在debian系统中,FileField字段在admin中因中文文件名上传报错,解决如下:

(1)终端中操作安装locales

(2)重新选择字符编码

(3).空格选择所有zh_开头的字符编码,OK确认下一步,选择中文UTF-8。

(4).debian里需要在~/.bashrc里面最下面加入export LC_ALL=zh_CN.UTF-8或者直接运行export.UTF-8。

(5).最后直接reboot重启服务器,查看系统编码,UTF-8中文生效,locale命令可以直接查看系统编码设置,此时再运行django项目上传中文名文件无误。

结语:以上就是首席CTO笔记为大家整理的关于django投票系统怎么改投的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23 13:15
下一篇 2023-09-23 13:15

相关推荐

发表回复

登录后才能评论