publish

Django模型层--多表操作

匿名 (未验证) 提交于 2019-12-02 23:52:01
一. 创建模型 表和表之间的关系     一对一、多对一、多对多 ,用book表和publish表自己来想想关系,想想里面的操作,加外键约束和不加外键约束的区别,一对一的外键约束是在一对多的约束上加上唯一约束。   实例:我们来假定下面这些概念,字段和关系   作者模型:一个作者有姓名和年龄。   作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息。作者详情模型和作者模型之间是一对一的关系(one-to-one)   出版商模型:出版商有名称,所在城市以及email。   书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系(many-to-many);一本书只应该由一个出版商出版,所以出版商和书籍是一对多关联关系(one-to-many)。   模型建立如下: from django.db import models # Create your models here. class Author(models.Model): #比较常用的信息放到这个表里面 nid = models.AutoField(primary_key=True) name=models.CharField( max_length=32) age=models.IntegerField()   def __str__

转战物联网・基础篇07-深入理解MQTT协议之控制报文(数据包)格式

匿名 (未验证) 提交于 2019-12-02 23:51:01
结构名 中文名 解释说明 Fixed header 固定报头 报文的最开始部分,所有报文都包含这个部分 Variable header 可变报头 固定报文的附加部分,有些报文没有这个部分 Payload 有效载荷 需要携带的信息内容,有些报文没有这个部分 Bit(位号) 7 6 5 4 3 2 1 0 Byte1(第一个字节) 组合代表MQTT控制报文(数据包)的类型 控制报文的标志位(Flags),可理解为一种属性参数 Byte2(第二个字节起) 剩余长度,当前报文剩余部分的字节数,包括可变报头和有效负载 7-4号位 十进制值 报文类型 报文允许发起方向 报文描述 0000 0 Reserved 禁止 保留,不可用 0001 1 CONNECT 客户端请求连接到服务端的代理服务 0010 2 CONNACK 连接请求的回复确认报文 0011 3 PUBLISH 客户端←→服务端 发布主题消息 0100 4 PUBACK 客户端←→服务端 发布确认,是QoS=1时,对 PUBLISH 的响应确认 0101 5 PUBREC 客户端←→服务端 发布收到,是QoS=2时,对 PUBLISH 的响应确认,是QoS=2实现的第一步 0110 6 PUBREL 客户端←→服务端 发布释放,是QoS=2时,对 PUBREC 的响应确认,是QoS=2实现的第二步 0111 7 PUBCOMP

树莓派也跑Docker和.NET Core

匿名 (未验证) 提交于 2019-12-02 23:47:01
原文: 树莓派也跑Docker和.NET Core 树莓派就是一个卡片大小的迷你电脑。 有了电脑,我们当然得先安装系统。 https://www.raspberrypi.org/downloads/raspbian/ ,我选择的Raspbian Stretch Lite,不带界面的最小安装。 https://sourceforge.net/projects/win32diskimager/ http://www.tucows.com/download.html?software_id=267216&t=2 打开win32diskimager,插上读卡器。 完成后在sd卡根目录添加两个文件 ssh wpa_supplicant.conf wpa_supplicant.conf的内容 把SD插入树莓派,然后插上电源线。 插上电源它就会自动开机启动了。使用Advanced IP Scanner扫描树莓派的ip(如果过了两分钟还是没有扫描到,可以尝试重新往SD添加wpa_supplicant.conf文件) 然后使用xshell连接。从现在开始,后面的操作你会感觉和普通linux没太大区别。 更换国内源(为了提高下载速度) sudo nano /etc/apt/sources.list 用#注释掉原文件内容,用以下内容取代: deb http://mirrors.tuna.tsinghua

源码分析

匿名 (未验证) 提交于 2019-12-02 23:45:01
认证组件 self是Request产生的对象,并不是APView产生的对象 证明以下就是列表中放的一个个对象 注意:response一定要到settings中注册"rest_framework" -认证组件 -写一个认证类,继承BaseAuthentication class MyAuth(BaseAuthentication): def authenticate(self,request): #写一些认证的逻辑 # print('我是认证类中的方法,只要配置了,一定会走我') token=request.GET.get('token') token_obj=models.Token.objects.filter(token=token).first() if token_obj: #有值表示登录了 #token_obj.user 当前登录的user对象 return token_obj.user,token_obj else: #没有值,表示没有登录,抛异常 raise AuthenticationFailed('您没有登录') 登录接口token的使用 md5算法目前还没有被破解,加^ -等加密方式都是破解不了的 -登录接口编写: -models.py from django.db import models # Create your models here. class

Django――图书管理系统

匿名 (未验证) 提交于 2019-12-02 23:42:01
1. 新建项目 2、新建静态文件夹,在settings 中配置静态文件,配置数据库 3、配置 路由 4、各功能 4.1返回主页面 4.2 查看 {% extends 'home.html' %} {% block content %} <a href="{% url 'add_book' %}" class="btn btn-success">添加</a> <table class="table table-striped table-bordered table-hover"> <thead> <tr> <th>id</th> <th>书名</th> <th>价格</th> <th>出版时间</th> <th>出版社</th> <th>作者</th> <th>操作</th> </tr> </thead> <tbody> {% for book_obj in book_info %} <tr> <td>{{ book_obj.pk }}</td> <td>{{ book_obj.title }}</td> <td>{{ book_obj.price }}</td> <td>{{ book_obj.publish_time|date:'Y-m-d' }}</td> <td>{{ book_obj.publish.name }}</td> <td>{% for author_obj

Automatic publish Beta Android app to the Google Play store

不问归期 提交于 2019-12-02 23:20:25
I am looking for a method that I can use to automatically publish an application to both the alpha and beta testing streams on the Google Play store, from my CI server. My CI setup is as follows: The Android app is written using Android Studio (using Eclipse really isn't an option for us). The build scripts are written in Rake, and run the Gradle tasks, as well as Calabash-Android tests. The build server is Teamcity 8+, that is currently hosted locally (though we could be moving across to Jenkins in the cloud). Having scanned through stackoverflow for an answer to this question, the only one

Python学习之路―2018/6/29

匿名 (未验证) 提交于 2019-12-02 22:56:40
Python学习之路―2018/6/29 跨表查询: 基于对象查询 基于双下划线查询 聚合和分组查询 F与Q查询 过滤器只能讲字段值与常量进行比较,如果需要用到与字段值进行比较则需要用到F查询,F查询还支持与常量之间的加减乘除的运算。数据: # 查询评论数大于阅读数的书籍 >>> Book . objects . filter ( comment_count__gt = F ( "read_count" )) < QuerySet [ < Book : 斗破苍穹 > , < Book : 吞噬星空 > ] > # 将所有书的价格提高10元 >>> Book . objects . all (). update ( price = F ( "price" ) + 10 ) 过滤器中可以用逗号起到“和”的作用,如果想要用“或”的操作就需要用到Q查询 # 查询书籍名为斗破苍穹或者价格为130的 >>> Book . objects . filter ( Q ( title = "斗破苍穹" ) | Q ( price = 130 )) < QuerySet [ < Book : 坏蛋是怎样炼成的 > , < Book : 斗破苍穹 > , < Book : 武动乾坤 > ] > 主要有图书的增删改查四个功能,对应设置四个视图函数分别为add()、query()、edit()、delete

How can I publish to a MQTT topic in a Amazon AWS Lambda function?

自古美人都是妖i 提交于 2019-12-02 22:26:26
I would like to have an easy command like I use in the bash to publish something to a topic on MQTT inside a AWS Lambda function. Along the lines of: mosquitto_pub -h my.server.com -t "light/set" -m "on" Background: I would like to turn a lamp on and off with Alexa. Alexa can start a Lambda function, and inside of this Lambda function I would like to start an MQTT publish, because the lamp can listen to a MQTT topic and react on the messages there.(Maybe there are easier solutions, but we are in a complicated (university) network which makes many other approaches more difficult) Roy If you are

C#委托学习笔记

你。 提交于 2019-12-02 21:27:10
1、C#委托是什么 c#中的委托可以理解一种类,这种类实例化后可以将函数的包装成一个变量(该变量就变成了对该函数的“引用”),它使得这个变量(函数)可以作为参数来被传递 ,这在作用上相当于c 中的函数指针。c 用函数指针获取函数的入口地址,然后通过这个指针来实现对函数的操作。 委托的定义和方法的定义类似,只是在定义的前面多了一个delegate关键字。如下定义: public delegate void MyDelegate(int para1, string para2); 委托能包装的方法是有一定限制的,例如能被前面的委托类型MyDelegate包装的方法需要满足以下条件: 1.方法的返回类型必须为void; 2.方法必须有两个参数,并且第一个参数应为int类型,第二个参数为string类型。 总结:可以被委托包装的方法必须满足以下规则: 1.方法的签名必须与委托一致,方法签名包括参数的个数、类型和顺序; 2.方法的返回类型要和委托一致,注意,方法的返回类型不属于方法签名的一部分。 2、委托的使用 //委托使用的演示 class Program { public delegate void MyDelegate(int para1, int para2); //1.使用delegate关键字来定义一个委托类型 static void Main(string[] args) {