sqlite

Django setting设置 常用设置

隐身守侯 提交于 2020-04-24 09:21:41
[toc] Django配置文件基本设置 前言 基础 DJANGO_SETTING_MODULE环境变量:让settings模块被包含到python可以找到的目录下,开发情况下不需要,我们通常会在当前文件夹运行,python可以搜索到。如果需要运行在其他服务器上,就必须指定DJANGO_SETTINGS_MODULE变量。 默认设定 一个django的settings文件不需要我们手动去设置所有项目,因为系统已经默认设置好了。我们只需要修改我们使用的设 定就好了。默认的设置在django/conf/global_settings.py文件中。django在编译时,先载入global_settings.py中的配置,然后加载指定的settings文件,重写改变的设定。 好了,步入正文。 前面的随笔中我们经常会改setting配置也经常将一些配置混淆今天主要是将一些常见的配置做一个汇总。 setting配置汇总 一、APP路径 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles',

推荐:使用 Anaconda 工具搭建并管理 Python 环境

前提是你 提交于 2020-04-24 06:56:05
https://www.anaconda.com/distribution/#download-section 官网下载地址 https://mirror.tuna.tsinghua.edu.cn/help/anaconda/ Anaconda 镜像使用帮助 https://repo.anaconda.com/archive/Anaconda2-2019.07-Windows-x86_64.exe 64bit for Python 2.7 version,使用IDM下载即可 https://repo.anaconda.com/archive/Anaconda3-2019.07-Windows-x86_64.exe 64bit for Python 3.7 version ,使用IDM下载即可 Anaconda3 没有开始菜单,参考: https://www.jianshu.com/p/beb59ca2b46e ? 一、安装 Anaconda2 -2019.07-Windows-x86_64.exe 开始菜单 安装完成。已经自动安装了python 2.7.16 可以将 “D:\PythonWork\Anaconda2” 目录添加到path中 二、再安装 python 3.7 开始菜单 --> 启动 Anaconda Prompt (Anaconda2) 运行命令:conda

EFCore.Sharding(EFCore开源分表框架)

若如初见. 提交于 2020-04-22 00:56:39
EFCore.Sharding(EFCore开源分表框架) 简介 引言 开始 准备 配置 使用 按时间自动分表 性能测试 其它简单操作(非Sharing) 总结 简介 本框架旨在为EF Core提供 Sharding (即读写分离分库分表)支持,不仅提供了一套强大的普通数据操作接口,并且降低了分表难度,支持按时间自动分表扩容,提供的操作接口简洁统一. 源码地址: EFCore.SHarding 引言 读写分离分库分表一直是数据库领域中的重难点,当数据规模达到单库极限的时候,就不得不考虑分表方案。EF Core作为.NET Core中最为主流的ORM,用起来十分方便快捷,但是官方并没有相应的Sharding支持,鄙人不才,经过一番摸索之后终于完成这个框架. 开始 准备 首先根据需要安装对应的Nuget包 包名 说明 EFCore.Sharding 必装包,3.x版本对应EF Core3.x,2.x版本对应EF Core2.x EFCore.Sharding.MySql MySql支持 EFCore.Sharding.PostgreSql PostgreSql支持 EFCore.Sharding.SQLite SQLite支持 EFCore.Sharding.SqlServer SqlServer支持 EFCore.Sharding.Oracle Oracle支持(暂不支持3.x)

Nginx + uWSGI + Python + Django构建必应高清壁纸站

血红的双手。 提交于 2020-04-20 13:42:03
写在前面 做这个网站的初衷是因为,每次打开必应搜索搜东西的时候都会被上面的背景图片吸引,我想必应的壁纸应该是经过专业人员精选出来的,我甚至会翻看以前的历史图片,唯一美中不足的是必应的首页只能查看最多7天的壁纸。所以我萌生出自己建一个网站,每天定时搜集必应的壁纸,将壁纸信息保存在数据库中,这样就可以看到很久之前的壁纸图片了。网站使用的是python的django框架,前端接入使用了nginx+uwsgi。没什么特别的考虑,其实网站本身没什么技术含量,使用python的django入手还是很快的,当然用nodejs+express也是不错的(其实我的node比python熟,想折腾点新东西哈哈)。我在这里写出步骤来,给刚刚上手的朋友们一个参考。服务器是直接购买的阿里云的,第一年很便宜才100不到好像,1核2G的基础配置带宽也低,不过够用了。域名直接在万网购买,其实也是阿里旗下,备案也很方便,按照提示步骤操作,差不多2周以内就下来了。最终的成果可以到这里先睹为快: 必应高清壁纸,必应每日一图 安装python环境 我们使用的是最新的django框架,需要比较新版本的python环境,阿里云的服务器我购买的时候选择的是centos 6.9,不过我觉得操作系统版本对后面的操作影响不大,服务器内置都已经安装有python环境,只不过是python2.6.6比较老的版本了

Injection safe parameterized queries with sqlite3 in python [duplicate]

烈酒焚心 提交于 2020-04-19 18:14:13
问题 This question already has answers here : Passing a column name in a SELECT statement in Python (2 answers) Closed 2 years ago . I've been reading documentation for sqlite and found that many sources strongly recommend avoiding python string substitution in queries since it makes them vulnerable to injection attacks: Avoid: conn.execute("SELECT * FROM %s" % table_name) conn.execute("SELECT * FROM {}".format(table_name)) I've seen several simple examples where string formatting like this is

360众测考试 Drupal 漏洞 CVE-2018-7600 远程代码执行-复现

感情迁移 提交于 2020-04-19 18:14:08
0x00 前言 昨天360众测遇到的一个题 今天自己搭环境复现一下,希望对大家有帮助 0x01 漏洞简介 Drupal是一个开源内容管理系统(CMS),全球超过100万个网站(包括政府,电子零售,企业组织,金融机构等)使用。两周前,Drupal安全团队披露了一个非常关键的漏洞,编号CVE-2018-7600 Drupal对表单请求内容未做严格过滤,因此,这使得攻击者可能将恶意注入表单内容,此漏洞允许未经身份验证的攻击者在默认或常见的Drupal安装上执行远程代码执行。 0x02 影响版本 Drupal 6.x Drupal 7.x Drupal 8.x 0x03 环境搭建 Vulhub 没有搭建的小伙伴看这: https://www.cnblogs.com/bflw/p/12534401.html 环境启动后,访问`http://your-ip:8080/`将会看到drupal的安装页面,一路默认配置下一步安装。因为没有mysql环境,所以安装的时候可以选择sqlite数据库。 最终是这样的 环境安装完之后是这样的 0x04 漏洞复现 抓包,改包 不会的小伙伴私信我呦 @@ (下边有联系方式) 执行id 执行ls命令 这里是吧命令写入一个文件在执行 直接执行只能是执行ID所以把命令写入1.txt在执行 其他命令也用同样的方法可以执行 0x05 修复意见 更新Drupal为最新版本

Injection safe parameterized queries with sqlite3 in python [duplicate]

我的梦境 提交于 2020-04-19 18:12:52
问题 This question already has answers here : Passing a column name in a SELECT statement in Python (2 answers) Closed 2 years ago . I've been reading documentation for sqlite and found that many sources strongly recommend avoiding python string substitution in queries since it makes them vulnerable to injection attacks: Avoid: conn.execute("SELECT * FROM %s" % table_name) conn.execute("SELECT * FROM {}".format(table_name)) I've seen several simple examples where string formatting like this is

Injection safe parameterized queries with sqlite3 in python [duplicate]

江枫思渺然 提交于 2020-04-19 18:12:16
问题 This question already has answers here : Passing a column name in a SELECT statement in Python (2 answers) Closed 2 years ago . I've been reading documentation for sqlite and found that many sources strongly recommend avoiding python string substitution in queries since it makes them vulnerable to injection attacks: Avoid: conn.execute("SELECT * FROM %s" % table_name) conn.execute("SELECT * FROM {}".format(table_name)) I've seen several simple examples where string formatting like this is

Injection safe parameterized queries with sqlite3 in python [duplicate]

那年仲夏 提交于 2020-04-19 18:11:26
问题 This question already has answers here : Passing a column name in a SELECT statement in Python (2 answers) Closed 2 years ago . I've been reading documentation for sqlite and found that many sources strongly recommend avoiding python string substitution in queries since it makes them vulnerable to injection attacks: Avoid: conn.execute("SELECT * FROM %s" % table_name) conn.execute("SELECT * FROM {}".format(table_name)) I've seen several simple examples where string formatting like this is

sqlite在android的应用1

て烟熏妆下的殇ゞ 提交于 2020-04-19 15:46:58
1、首先对sqlite介绍 sqlite是一个轻量级数据库,符合ACID的特点 注:Atomicity原子性 一个原子性任务是一个独立的单元 Consistency一致性 不管是几个线程共同完成要保持结果的一致性 Isolation隔离性 隔离性是隐藏外部未提交的状态,通过悲观锁和乐观锁解决 Durability耐久性 就是说一个状态提交之前所有的状态变化都能被记录,突然断电也能有保存上个状态 在windows的迅雷qq数据缓存和android的数据存储方面都有应用 2、sqlite的特点 (1)单一文件 (2)轻型 (3)无需安装 (4)嵌入式 (5)跨平台,开源 (6)弱字段类型 支持NULL: 这个值为空值 VARCHAR(n):长度不固定且其最大长度为 n 的字串,n不能超过 4000。 CHAR(n):长度固定为n的字串,n不能超过 254。 INTEGER: 值被标识为整数,依据值的大小可以依次被存储为1,2,3,4,5,6,7,8. REAL: 所有值都是浮动的数值,被存储为8字节的IEEE浮动标记序号. TEXT: 值为文本字符串,使用数据库编码存储(TUTF-8, UTF-16BE or UTF-16-LE). BLOB: 值是BLOB数据块,以输入的数据格式进行存储。如何输入就如何存储,不改 变格式。 DATA :包含了 年份、月份、日期。TIME: 包含了