如何使用Python的Django框架创建自己的网站

news/2024/5/16 14:21:08/文章来源:https://blog.csdn.net/weixin_44913038/article/details/102488475

如何使用Python的Django框架创建自己的网站

Django建站主要分四步:1、创建Django项目,2、将网页模板移植到Django项目中,3、数据交互,4、数据库

1创建Django项目

本人使用的是pycharm编辑器,打开pycharm,如下图点击左下角红框位置,选择terminal,然后在terminal窗口输入

django-admin.py startproject myproject

然后再输入

python manage.py startapp myapp

上面的myproject和myapp都是自己定义的工程名和APP名

至此,Django项目已经建立完毕。

2将网页模板移植到Django项目中

1、在myapp文件下新建两个文件夹,static和templates,static文件夹放置网页模板的css、js以及其他文件夹,templates文件夹只放.html的文件
在这里插入图片描述
2、对Django项目的四个文件进行修改,因为将模板移植到Django项目中,需要在模板文件中进行一些格式修改。

  1. setting.py
    在里面添加自己的APP,添加模板的文件夹路径
'DIRS': [os.path.join(BASE_DIR,'templates')],

在这里插入图片描述
在这里插入图片描述

  1. url.py
    新加以下语句
from django.urls import path
from django.conf import settings
from django.conf.urls.static import static
from myapp import views

然后再添加网页的路径

path('login', views.login),

在这里插入图片描述

  1. views.py
    定义一个响应函数,函数名必须和网页的xx.html前缀名相同
def index(request):return render(request, 'index.html', 
  1. xx.html
    在下添加下面语句,表示下面的模板由Django接管
{% load static %}

以下为Django下的一些语句格式例子

<script src="{% static "js\highcharts.js" %}"></script>
{% for line in data1 %}{% if line.user == data2.user %}{% if line.psw == data2.psw %}<Meta http-equiv="refresh" content="1;url=index">{% endif %}{% endif %}
{% endfor %}

可以看出在路径和for循环if判断语句中都要用{% %}。

3数据交互

  1. views.py
    首先定义一个list,如user_list[ ],用于存放数据
    数据的方法为POST,所以在响应函数中加一个判断语句
   def login(request):if request.method == "POST":username = request.POST.get("username", None)//将用户输入的数据存到变量中password = request.POST.get("password", None)user_list = {"user": username, "psw": password}return render(request, 'login.html', {"data1": user_list})//将数据送回到页面
  1. xx.html
    数据返回到页面后,通过for循环读取
{% for line in data1 %}line.user = data1.userline.psw = data1.psw
{% endfor %}

4数据库的操作

需要更改三个文件

  1. setting.py
    Django有自己自带的数据库
DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': os.path.join(BASE_DIR, 'db.sqlite3'), #Django自带的数据库}
}
  1. models.py
    先创建models
class UserInfo(models.Model):user = models.CharField(max_length=32)psw = models.CharField(max_length=32)

只要动了models.py,就要在terminal中输入以下两个语句

python manage.py makemigrations
python manage.py migrate
  1. views.py
    新加下面语句
from myapp import models

给数据库写入数据

models.UserInfo.objects.create(user="zhoupeng", psw="123456")

读取数据库数据

user_list = models.UserInfo.objects.all()

可以直接在网页中读数据库进行操作
在admin.py文件中加入以下语句

from myapp.models import UserInfo
admin.site.register(UserInfo)

然后创建超级用户
在terminal中输入

python manage.py createsuperuser

即可在http:/ /admin中对数据库进行操作
至此,一个完整的Django项目就完成了。

调式过程的心得

1、调试过程出现任何bug首先看一下自己是不是有那里拼写错误
2、有的时候调试很久,什么都没有错,但网页就是刷新不出来,但是过一段时间却自动好了,有可能是端口的问题,换个端口试一下
3、中的login为点击submit时要跳转的页面,写错会出现page not found,对于method,有数据是为post,无数据是为get
4、在url.py中 path(’’, views.login)和path(‘index’, views.index)的区别,前者的url为http:/…/后者为http:/…/index
5、出现错误为“Local variable xxx referenced before assignment”,就是局部变量和全局变量的问题,在响应函数中加global xxx,或者直接将变量定义在函数里

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_893285.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站项目成功管理实践(刘振飞)

网站项目成功管理实践 刘振飞 —发表在《程序员》杂志2005年第8期58~62页的原文— 在开始做 http://133.newsky.cn之前&#xff0c;我已经明白网站的开发与产品开发没有什么不同。不过在2004年离开微软中国研发中心Office组的时候&#xff0c;我对网站开发仍一无所知&#xff0…

网站日记分析插件【土拨鼠网站日记管理(分析推送二合一)】宝塔插件,日记分析和网站收录推送

应用名称&#xff1a;土拨鼠网站日记分析管理版本&#xff1a;3.0 目前只支持linux版宝塔作者&#xff1a;土拨鼠 功能介绍&#xff1a;SEO辅助工具&#xff0c;站点蜘蛛&#xff0c;访问记录&#xff0c;模拟蜘蛛&#xff0c;监控统计。只要添加的蜘蛛池IP丰富。便可以精准过…

网站防采集_【土拨鼠网站日记管理(分析推送二合一)】宝塔插件之可疑蜘蛛列表(找出采集蜘蛛)说明书

可疑蜘蛛列表功能介绍&#xff1a; 可疑蜘蛛列可以筛选出采集蜘蛛、假的搜索引擎蜘蛛、一般模拟蜘蛛都是带着目的才会模拟的。有些是灰帽模拟蜘蛛镜像我们的站点&#xff0c;导致站点降权&#xff0c;或者使用采集软件模拟蜘蛛采集我们站点的文章&#xff0c;抢占我们的关键词…

死链URL抓取【土拨鼠网站日记管理(分析推送二合一)】宝塔插件之死链蜘蛛列表说明书

死链蜘蛛列功能介绍&#xff1a; 死链蜘蛛列可以筛选出蜘蛛访问的404链接。 使用技巧&#xff1a; 1.站点降权的时候可以在这个查看是否有死链。死链多的时候也会降权。 2.可以查看是否有不法分子模拟蜘蛛。扫站&#xff0c;比如URL的后缀是.zip,.rar这类的。访问站点不存在…

土拨鼠网站日记管理(分析推送二合一)】宝塔插件之自动爬取全站URL推送说明书

自动爬取全站URL推送说明书: 此功能将会针对爬取的站点进行全站URL爬取并且进行推送&#xff0c;爬取的每一条URL都会只推送一次&#xff0c;不会重复推送。 1.设置爬取的URL尽量是本服务器的站点&#xff0c;如果要推送别的站点可以先测试服务器能否请求到这个站点。别的站点…

百度URL自动推送收录插件【土拨鼠网站日记管理(分析推送二合一)】推送功能配置教程

推送功能配置教程&#xff08;推送功能和网站日记分析功能可以单独分开始用&#xff0c;需要哪个功能就单独设置这个功能即可&#xff09;&#xff1a; 第一次使用推送功能需要在【工具设置】先生成缓存数据库和配置推送计划 初次设置&#xff1a; 自动爬取整站URL推送 &…

PS做食品网站

PS做食品网站 姓名&#xff1a;蒋林松 日期&#xff1a;2019.5.27 食品网站大家应该都听说过吧&#xff0c;都有一种和熟系的感觉&#xff0c;大家平时有没有观察在网上购物的时候人家的网站是这么做的呢&#xff0c;首先我们做食品网站就要去做关于食品类型的网站&#xff0c;…

网站中用到的图标字体集

一个按钮&#xff0c;前后左右中或带有一个图标&#xff0c;代表这个按钮的实际意义。现在已经有成熟简单的方法来完成。 font-face是CSS3中有关于字体设置的属性&#xff0c;通过font-face可以将本地字体设置为Web页面字体&#xff0c;并能兼容所有浏览器。使用font-face配合一…

win8 iis安装及网站发布(上)

系统&#xff1a;win8 环境&#xff1a;vs2012 一&#xff1a;安装IIS 比较win7的安装来说&#xff0c;多选了几个钩钩&#xff0c;不然会报错&#xff0c;偶就遇到这样的错误。 控制面板-》程序和功能-》启动和关闭windows功能&#xff0c;钩钩图例&#xff1a; 装好之后在控制…

win8 iis安装及网站发布(下)

在setting里设置 release any cpu ok 下一步 发布 3&#xff1a;建站 启动IIS信息管理器 &#xff08;运行-〉inetmgr&#xff09; 网站-〉右击添加网站&#xff0c;设置好路径&#xff0c;端口号&#xff0c;应用程序池我的默认为 确定好后&#xff0c;浏览网站&#xff0c;…

网站域名“符号化”正在变得越来越重要

网站域名“符号化”正在变得越来越重要&#xff0c;符号化的简单域名是对用户的尊重 一个好记、易识别的域名&#xff0c;对一家网站来说&#xff0c;有着举足轻重的作用。闽南网相关负责人从四个方面对新域名的价值进行了解读。 第一、对于新媒体来说&#xff0c;“符号化”正…

动态网站初体验

技能结构图 B/S 和 C/S 什么是B/S技术 B/S结构&#xff08;浏览器browser/服务器server&#xff09;&#xff1a;程序完全部署在服务器上&#xff0c;用户通过浏览器访问应用程序&#xff0c;他是基于Internet的产物 B/S技术的工作原理 B/S结构中浏览器端与服务器端采用请求…

绕过CDN查找网站真实ip

绕过CDN查找网站真实IP 转载自 https://xiaix.me/rao-guo-cdncha-zhao-wang-zhan-zhen-shi-ip/ 这篇博文比较全面&#xff0c;有很强的参考价值 0x01 验证是否存在CDN 方法1 很简单&#xff0c;使用各种多地 ping 的服务&#xff0c;查看对应 IP 地址是否唯一&#xff0c;如果不…

视频网站开关灯特效

开关灯效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.org/1999/xhtml"> <head> <title>关灯/开灯效果…

技术人创业建站简略指南(Version 0.03)

你是一个技术人员&#xff0c;你想创建一个站点&#xff0c;或许是一时心血来潮&#xff0c;或许是为了自己的兴趣爱好&#xff0c;或许是… 「创业」前的热身准备&#xff1f;那么&#xff0c;如何少走弯路的构建起来你的 Web 站点呢&#xff1f;别笑&#xff0c;不是每个做技…

网站的身份验证

网站的身份验证 左直拳 前段时间用ASP.NET做一个网站&#xff0c;其中有个要求是网站里有些页面或功能需要用户登录后才能浏览或使用。 应该没有什么问题&#xff0c;因为ASP.NET提供了完善的身份验证服务。 ASP.NET 与 IIS 一起使用以支持身份验证。有四种验证方式供君选择&a…

创建第一个asp.net网站

标题&#xff1a;创建第一个asp.net网站 摘要&#xff1a;通过对微软Visual Studio 2008的简单操作介绍。指导您使用Visual Web Developer 来创建简单页&#xff0c;演示了vs开发asp.Net的基本技术。 难度&#xff1a;10 很早就想学习asp.Net了&#xff0c;断断续续的拖了一年…

微博网站用OAuth就一定安全吗?

现在微博网站很火&#xff0c;新浪微博、搜狐微博、腾讯微博、网易微博……无论是在电视上、还是公交车上、地铁上&#xff0c;真的是铺天盖地了&#xff0c;也因此这些公司的市值不断提升。为了吸引更多的应用&#xff0c;这些网站也纷纷开放API&#xff0c;以开放平台的方式供…

你的网站排名是否遭到竞争对手的破坏?

一说起这个名字&#xff0c;站长们猛的一震&#xff0c;如果自己的网站排名遭到竟争对手的恶意攻击&#xff0c;那可怎么样办&#xff1f;如果你的网站外部链接突然大量增加&#xff0c;有可能会伤害你的网站排名。 其实大家不必恐慌&#xff0c;我个人认为外部链接不会降低排名…

你的站为什么百度无动于衷——10年老站长的SEO肺腑之言

时光荏苒&#xff0c;转眼间2015年已过去一半&#xff0c;时过境迁&#xff0c;一切都变了模样&#xff0c;SEO也似乎变得让人琢磨不定。回想起10多年前&#xff0c;站长们都疯狂做站的时代&#xff0c;仍令人激动&#xff0c;但那份激情貌似一江春水永不复返&#xff0c;如今再…