<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sun9979的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sun9979</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sun9979]]></copyright><item><title><![CDATA[Socketio下载以及使用方法]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/106874875</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/106874875</guid><author>sun9979</author><pubDate>Sat, 20 Jun 2020 18:04:35 +0800</pubDate><description><![CDATA[一、下载Socketio
Socketio官方网站

二、Socketio的连接
Socketio使用方法官方地址
1）服务器端

//服务器端代码
const io = require('socket.io')(app)    //socketio对象 ，这句话应放在监听代码之后，否则会报错

io.on('connection',socket =&gt;{
    console.log('新用户连接了')
})

2）浏览器端

//只需要把包导进来
&lt;script src="/socket.i]]></description><category></category></item><item><title><![CDATA[Websocket实现广播]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/106872474</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/106872474</guid><author>sun9979</author><pubDate>Sat, 20 Jun 2020 16:32:00 +0800</pubDate><description><![CDATA[我们使用server.connection实现广播。
一、简单的广播实现
Github链接地址

//每一个连上服务器的用户都有一个conn对象
const server = ws.createServer(conn =&gt; {
    console.log('新的连接')
    count++
    
    conn.userName = `用户${count}`   //模板字符串
    console.log(conn.userName)
    // 告诉所有用户，有人加入聊天室
  ]]></description><category></category></item><item><title><![CDATA[建立WebSocket服务及处理信息]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/106858964</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/106858964</guid><author>sun9979</author><pubDate>Sat, 20 Jun 2020 10:18:27 +0800</pubDate><description><![CDATA[使用Node.js来建立一个自己的WebSocket服务。环境选择的是VS Code。
一、建立自己的WebSocket服务
1）首先安装一个第三方的包
我们选择使用，Nodejs.websocket这个包

2）使用方法
Github上的地址

//1.导入nodejs-websocket包
const ws = require('nodejs-websocket')
const PORT = 3000

//2.创建一个server
const server = ws.createServer(conn]]></description><category></category></item><item><title><![CDATA[Websocket的介绍以及基本使用]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/106857720</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/106857720</guid><author>sun9979</author><pubDate>Fri, 19 Jun 2020 16:19:43 +0800</pubDate><description><![CDATA[1.为什么要选择Websocket而不选择Http?
首先明确一点，Websocket和Http都属于应用层协议。
其次，一个客户端要将信息发送给另外一个客户端是需要经过服务器的，由服务器代为转发。
而Http是基于 请求-------&gt;响应模型的，即服务器不会主动给客户端发送，只是相应它的请求。

Websocket协议是基于TCP协议的一种新的网络协议，它实现了浏览器与服务器全双工（full-duplex）通信，即允许服务器主动发送信息给客户端
Websocket是一种持久协议，Http是非持久协]]></description><category></category></item><item><title><![CDATA[卷积神经网络的体系结构]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103322363</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103322363</guid><author>sun9979</author><pubDate>Sat, 30 Nov 2019 11:31:14 +0800</pubDate><description><![CDATA[1、机器如何看待图像
人脑是一个很强大的机器，我们每秒可以看到（捕获）多个图像并处理它们而不知道是如何完成的。但是，机器不是这样的。图像处理的第一步是理解，如何表示图像，以便机器能够读取它。
简单地说，每一个图像都是以特定的顺序排列的点（像素）的排列。如果改变一个像素的顺序或颜色，图像也会改变。让我们举个例子。假设，你想存储和读取一个写在图片上的数字4。
机器将基本上将该图像分解成像素矩阵，并在代...]]></description><category></category></item><item><title><![CDATA[Django中配置SQL Srever数据库（Win10）]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103321996</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103321996</guid><author>sun9979</author><pubDate>Sat, 30 Nov 2019 11:01:47 +0800</pubDate><description><![CDATA[我所使用的环境：Sql Server2017，python3.7版本， Pycharm3.5的专业版，Django2.2版本
1、数据库驱动程序检查

驱动查看路径默认为 C:\Windows\SysWOW64\odbcad32.exe


2、settings.py中代码如下：
DATABASES = {
    'default': {
        'ENGINE': 'sql_serve...]]></description><category></category></item><item><title><![CDATA[第一次使用Python中的Django框架搭建网站学习路线总结]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103315728</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103315728</guid><author>sun9979</author><pubDate>Sat, 30 Nov 2019 10:54:40 +0800</pubDate><description><![CDATA[历时三个星期的零零散散时间，终于成功完成了数据库的综合实验---------一个小的网站。
第一次涉及Web开发领域，选择的是Python中的Django框架搭建的。本片博客用于学习路线的总结，方便日后快速回忆起来。如果你想要在短时间内搭建一个网站，这篇博客可能对你有些帮助。
刚开始涉及这个领域，就会比较的迷茫，不知从何学起，因为时间有限，要在比较短的时间里完成，就想着有针对性的学习，但还是走了不...]]></description><category></category></item><item><title><![CDATA[Django中的ORM对数据库进行增删改查]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103320943</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103320943</guid><author>sun9979</author><pubDate>Sat, 30 Nov 2019 09:50:29 +0800</pubDate><description><![CDATA[model.py中的类如下所示：
class Student(models.Model):
    student_id = models.CharField(max_length=20,primary_key=True)   #身份证号：主键
    student_name = models.CharField(max_length = 20)    #姓名
    student_addr ...]]></description><category></category></item><item><title><![CDATA[Django模板的继承和引入]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103094581</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103094581</guid><author>sun9979</author><pubDate>Sat, 16 Nov 2019 11:39:26 +0800</pubDate><description><![CDATA[Web网站，多个HTML的头部和尾部都是一样的，这个时候代码就会冗余，为了解决这种冗余，就需要使用模板的继承或者引入。
1、引入模板

有时候一些代码是在许多模板中都用得到的。如果我们每次都重复的去拷贝代码那肯定没有必要
一般，我们可以把这些重复性的代码抽取出来，就类似python中的函数一样，以后想要使用这些代码的时候，就通过include包含进来。这个标签就是include

#header....]]></description><category></category></item><item><title><![CDATA[Django模板语言DTL中的过滤器]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103094580</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103094580</guid><author>sun9979</author><pubDate>Sat, 16 Nov 2019 11:14:12 +0800</pubDate><description><![CDATA[在模板中，有时候需要对一些数据进行处理以后才能使用，一般python中我们是通过函数的形式来完成的。而在模板中，则是通过过滤器来实现的。过滤器使用的是 | 来使用
1、cut
{{value | cut:" "}}
'''
	移除所有指定的字符串。类似于python中的replace(args,"")
	以上示例就会移除value中所有的空格字符
'''

2、data

将日期按照指定格式，格式...]]></description><category></category></item><item><title><![CDATA[Django模板语言DTL中的变量和标签]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103094567</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103094567</guid><author>sun9979</author><pubDate>Sat, 16 Nov 2019 10:26:13 +0800</pubDate><description><![CDATA[1、DTL的变量

模板中可以包含变量，Django在渲染模板的时候，可以传递变量对应的值过去进行替换。DTL语言将两个大括号对里的内容当作变量名。
变量的命名规范和Python非常类似，只能是阿拉伯数字和英文字符以及下划线的组合，不能出现标点符号等特殊字符。
变量需要通过视图函数渲染，视图函数在使用render或者render_to_string的时候可以传递一个context的参数，这个参数是...]]></description><category></category></item><item><title><![CDATA[Django ------ 静态文件的渲染（添加css,js,image）]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103094538</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103094538</guid><author>sun9979</author><pubDate>Sat, 16 Nov 2019 02:26:21 +0800</pubDate><description><![CDATA[对静态文件的渲染本质就是添加css，js，image
在配置文件setting.py中包含如下：

在官网中找到相应的内容：

然后，按照官网中的要求去写：
STATIC_URL = '/static/'     #url
STATICFILES_DIRS = [                #路径
    os.path.join(BASE_DIR, "static"),

]

注意：这个配...]]></description><category></category></item><item><title><![CDATA[Django在project下的app目录下添加模板文件templates详细说！]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103094478</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103094478</guid><author>sun9979</author><pubDate>Sat, 16 Nov 2019 01:50:05 +0800</pubDate><description><![CDATA[1、在根目录下创建一个目录my_templates，用于存放模板文件
2、在其中创建一个模板文件

例如，创建一个首页,命名为index.py

3、渲染模板
回顾视图函数的作用
def 函数(request):
	#1、接收数据
	#2、处理数据
	#3、合成响应正文
	#4、返回response对象

4、模板的路径查找问题 TemplateDoesNotExist

在配置文件setting...]]></description><category></category></item><item><title><![CDATA[Django的模板语言DTL介绍以及渲染方式]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103094423</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103094423</guid><author>sun9979</author><pubDate>Sat, 16 Nov 2019 01:28:34 +0800</pubDate><description><![CDATA[1、前言

视图函数只是直接返回文本，而在实际生产环境中其实很少这样用，因为实际的页面大多是带有样式和HTML代码，这可以让浏览器渲染出非常漂亮的页面。
目前市面上有非常多的模板系统，其中最知名最好用的就是DTL和Jinja2。
DTL是 Django Template Language 三个单词的缩写，也就是Django自带的模板语言
当然也可以配置Django支持Jinja2等其他模板引擎，但...]]></description><category></category></item><item><title><![CDATA[Django ------ 将主路由和子路由进行绑定]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103074870</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103074870</guid><author>sun9979</author><pubDate>Fri, 15 Nov 2019 09:27:15 +0800</pubDate><description><![CDATA[在你主路由的urls.py中，最初有提供的注释，都很有用，不要轻易删，如果看着碍事就把它隐藏起来

大致说的就是，你要绑定一个子路由的URL配置， 需要引入一个库，并且代码按照它给的方式写。
主路由中的代码如下：
from django.urls import path, re_path,include

urlpatterns = [
    path('admin/', admin.site....]]></description><category></category></item><item><title><![CDATA[Django------子应用的作用和创建]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103074813</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103074813</guid><author>sun9979</author><pubDate>Fri, 15 Nov 2019 09:12:08 +0800</pubDate><description><![CDATA[不同的业务需要通过不同的app来分开的。
例如，豆瓣网站：

不同的框架栏，归置的是不同的业务，就需要用不同的应用（主应用就一个，就需要创建多个子应用）

如下所示的book,music,movie就是创建的子应用的名称（下图非原创）


1、如何创建一个子应用

首先使用虚拟环境的编译python解释器

输入命令：startapp movie

结果如下：


1、一个应用就相当于一个包（可以...]]></description><category></category></item><item><title><![CDATA[Django路由和视图]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103073732</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103073732</guid><author>sun9979</author><pubDate>Fri, 15 Nov 2019 08:47:12 +0800</pubDate><description><![CDATA[从别的地方找来的一张图：

还有一些需要补充的地方：
1、路由的概念

维护视图视图函数映射关系的结构，在Web框架中，称之为路由
Django把这种映射关系叫做URLConf（URL配置）,URL配置把URL映射到相应的视图函数中，我们以这种方式告诉Django，“访问这个URL时调用这些代码，访问那个URL时调用那些代码”

2、正向路由
通过url地址，查找到视图函数，从而响应给浏览器
1）...]]></description><category></category></item><item><title><![CDATA[Pycharm中的几个使用小技巧]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103071991</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103071991</guid><author>sun9979</author><pubDate>Thu, 14 Nov 2019 19:35:53 +0800</pubDate><description><![CDATA[1、alt + enter

可以反向导入包，选中函数名称，如下图所示，然后选择即可


2、ctrl + 点击

可以看函数的源代码，了解参数和逻辑
点击path，看到代码如下


3、在运行Django的时候，需要选择如下图

这样可以避免运行出错，端口已经被占用了



...]]></description><category></category></item><item><title><![CDATA[Django入门---Hello World]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103071610</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103071610</guid><author>sun9979</author><pubDate>Thu, 14 Nov 2019 19:35:10 +0800</pubDate><description><![CDATA[如何通过http://127.0.0.1:8000/index   --------&gt;访问到hello world？
本博客主要是说明下这个问题。
1、输入url地址之后，应该首先找到：路由文件-------&gt;获取相应的视图函数
在settings.py中有ROOT_URLCONF = 'sitel.urls' 配置指明路由文件所在地址 urls.py
#全局变量，路由列表，数据url...]]></description><category></category></item><item><title><![CDATA[Django目录结构说明]]></title><link>https://blog.youkuaiyun.com/sun9979/article/details/103037978</link><guid>https://blog.youkuaiyun.com/sun9979/article/details/103037978</guid><author>sun9979</author><pubDate>Tue, 12 Nov 2019 20:33:06 +0800</pubDate><description><![CDATA[假设创建的项目名称为site2
----site2（项目根目录，名称随意写）
	----site2（网站主应用目录）
		----_init_.py（包的初始化文件）
		----settings.py（网站的配置文件）
		----urls.py（网站主路由表）
		----wsgi.py（网站入口文件）
	----templates（模板文件所在目录）
	----manage.py（启动服务器...]]></description><category></category></item></channel></rss>