学习必须像蜜蜂,采过许多花,才能酿出来蜂蜜🍯🍯🍯
键值在不在字典中
#判断键在不在字典中
for one in dict1:
if 'name' in dict1:#或dict1.keys()
print('key在字典中!')
break
#判断值在不在字典中
for one in dict1:
if 'Lara' in dict1.values():
print('value在字典中!')
break
print(a and b)
and
如果bool(a) == False,那么(a and b)的值就是a的值,无论b的值是什么;反之(bool(a) == True)则是b的值。
or
如果bool(a) == True,那么(a or b)的值就是a的值,无论b的值是什么,反之(bool(a) == False)则是b的值。
jquery设置select
今天遇到一个胃疼的问题,selected=selected不生效,检查发现$(select).val(’’)
想哭但是哭不出来
学习jquery设置selected
jquery 设置select的默认值
<select id="sid" >
<option value="s1" > w</option>
<option value="s2" > z</option>
</select>
第一种设置值:
$(function(){
$("#sid").attr("w","<%=123 %>")
});
第二种设置值得方式:是将select中的任何一个 option 来设为默认值
$(function(){
$("#sid option[value='z'] ").attr("selected",true)
});
在网上找了设置select之后,发现用$(’#xxid’).val();设置即可。
真蠢是我了🎍
js时间格式校验
function isDatetime(date){
var regex=/^(?:19|20)[0-9][0-9]-(?:(?:0[1-9])|(?:1[0-2]))-(?:(?:[0-2][1-9])|(?:[1-3][0-1])) (?:(?:[0-2][0-3])|(?:[0-1][0-9])):[0-5][0-9]:[0-5][0-9]$/;
if(!regex.test(date)){
alert("格式不正确!请输入正确的时间格式,如:2010-07-07 09:12:00");
return false;
}
alert("格式正确!");
return true;
}
年份校验,校验格式比如:2020
月日校验:校验格式比如:1/1, 12/31
1/2中的/,正则中转义为:\/
var regex_year = /^(?:19|20)[0-9][0-9]$/;
var regex_md = /^(?:(?:[1-9])|(?:1[0-2]))\/(?:(?:[1-9])|(?:[1-2][1-9])|(?:[1-3][0-1]))/;
if (!regex_y.test(year)){
alert('yerror');
return;
}
if (!regex_md.test(newyearstartdate)){
alert('error');
return;
}else {
alert('ok');
}
django前后台检验时间段是否重复
前端时间格式校验【时:分:秒】:
var regTime = /^(?:(?:[0-2][0-3])|(?:[0-1][0-9])):[0-5][0-9]:[0-5][0-9]$/;
if (!regTime.test(starttime)) {
$('#form_spaninfo').text('开始交易时间,格式不正确。');
return;
}
if (!regTime.test(endtime) || endtime.length !== 8) {
$('#form_spaninfo').text('结束交易时间,格式不正确。');
return;
}
前端发送post请求验证时间段是否重复:
后端返回数据在前端的处理:
if (r === 'RepeatTime') {
$("#form_spaninfo").text('时间段重复。')
return;
}
后端校验时间段是否重复:
elif request.POST.get('addORmodify_DB', None):
aORmFlag = request.POST.get('aORmFlag', None)
data = json.loads(request.POST.get('data', None))
id = data.get('id', None)
exchangeid = data.get('exchangeid', None)
starttime = data.get('starttime', None)
endtime = data.get('endtime', None)
# 判断时间段是否重复
# flag=True,循环条件有一个不满足的,给前台发信号提示重复。
FlagRepeat = True
temp_list = []
thObj_list = []
temp_list.append({'starttime': starttime, 'endtime': endtime})
if aORmFlag == 'add':
# th_obj = Tradinghours.objects.all()
th_obj = Tradinghours.objects.filter(exchangeid = exchangeid)
else:
th_obj = Tradinghours.objects.exclude(id = id).filter(exchangeid = exchangeid)
for item in th_obj:
thObj_list.append({'starttime': item.starttime, 'endtime': item.endtime})
for outer_i in temp_list:
for inner_i in thObj_list:
if outer_i['starttime'] < inner_i['starttime'] and outer_i['endtime'] >= inner_i['starttime']:
FlagRepeat= False
if outer_i['starttime'] > inner_i['starttime'] and outer_i['starttime'] <= inner_i['endtime']:
FlagRepeat= False
if FlagRepeat == False:
return HttpResponse('RepeatTime')
前后台判断是否重复总结
修改主键,实例为自成交页面
之前没有id字段,只有channelid字段。
在写程序时发现不妥,加上id字段是为了在修改时确定被修改的记录。
修改时逻辑
# 修改
# 1.数据存在
# 2.将要修改的channelid是否已存在,不存在继续,存在报错提示
# 3.确认后修改channelid
添加时逻辑
# 新增
# 1.将要新增的channelid是否存在,存在报错提示,不存在新增
# 2.可忽略id,因id自增
修改主键,节假日时间配置
修改:
1.原数据a存在
2.修改后的数据与表中的数据是否冲突,冲突提示是否要覆盖,是覆盖,不是隐藏模态框。不冲突,修改原数据a。
transfer修改oracle端口
默认端口1521改成了1528,去程序里一看,没有配端口的地方,根据我的配置文件,
在database中:ip:port/dbname
checkbox前端selected不生效
django项目中发现点击新建,checkbox会记忆上次的勾选或者不勾选操作
学习发现,django对checkbox的解析有好几种方式,要找对配合的添加,移出方式。
{#$("#ismd5new").removeAttr("checked", "checked");#} 这种方式不生效,使用下面的方式,生效了。
if($("#ismd5").is(':checked')){
$("#ismd5").prop("checked",false);
}
prop,类似于django中的get,删除key
$("#ismd5new").parent().css('display', "block");
安装QuantLib报错记录1
报错信息,–user环境拒绝
解决方案:
if__name == ‘__main’:
f1(),f2()的函数调用,只能在1中调用,2中不行
2中导入1时,__name__ = 1的py文件名,
条件为假;
此时满足f1,f2只可在1中测试使用,2中想用啥自己调用。