django项目,从sqlite换成mysql数据库后无法插入数据了,只能删除数据。 50
@Ajaxdefuser_register_add(request):kv=GetParam(request,'name','password','user_sex','...
@Ajax
def user_register_add(request):
kv = GetParam(request, 'name',
'password', 'user_sex', 'user_role', 'user_unit_1', 'user_unit_2', 'user_unit_3', 'phone',
'identitycard', 'birthday', 'address', 'title', 'country', 'investigation', 'degree', 'nation',
'email', 'code', 'real_name', 'mobile')
u = User()
utid = int(kv['user_unit_3'])
if not utid: utid = int(kv['user_unit_2'])
if not utid:
utid = Unit.get_root().pk #int(kv['user_unit_1'])
if kv['user_unit_1']!='其他':
u.expert_dep='顶级单位'
else:
u.expert_dep='其他'
assert utid != 0
u.name = kv['name']
u.real_name = kv['real_name']
u.password = kv['password']
u.sex = kv['user_sex'] == "1"
u.role_id = int(kv['user_role'])
u.unit_id = utid
u.status = StatusUser.APPROVE
u.mobile = kv['mobile']
u.phone = kv['phone']
u.nation = kv ['nation']
u.address = kv['address']
u.identitycard = kv['identitycard']
u.birthday = kv['birthday']
u.degree = kv['degree']
u.title = kv['title']
u.country = kv['country']
u.investigation = kv['investigation']
u.email = kv['email']
if User.objects.filter(name=kv['name']).exists():
return CallBack('用户名已经存在');
else:
u.save()
return OK
我用的Pycharm开发工具,设断点调试到最后面的u.save()这里直接跳过了。
换回sqlite3数据库就可以插入,用mysql就不行了。以前的数据是从sqlite导入到mysql中的。
请问怎么调整代码? 展开
def user_register_add(request):
kv = GetParam(request, 'name',
'password', 'user_sex', 'user_role', 'user_unit_1', 'user_unit_2', 'user_unit_3', 'phone',
'identitycard', 'birthday', 'address', 'title', 'country', 'investigation', 'degree', 'nation',
'email', 'code', 'real_name', 'mobile')
u = User()
utid = int(kv['user_unit_3'])
if not utid: utid = int(kv['user_unit_2'])
if not utid:
utid = Unit.get_root().pk #int(kv['user_unit_1'])
if kv['user_unit_1']!='其他':
u.expert_dep='顶级单位'
else:
u.expert_dep='其他'
assert utid != 0
u.name = kv['name']
u.real_name = kv['real_name']
u.password = kv['password']
u.sex = kv['user_sex'] == "1"
u.role_id = int(kv['user_role'])
u.unit_id = utid
u.status = StatusUser.APPROVE
u.mobile = kv['mobile']
u.phone = kv['phone']
u.nation = kv ['nation']
u.address = kv['address']
u.identitycard = kv['identitycard']
u.birthday = kv['birthday']
u.degree = kv['degree']
u.title = kv['title']
u.country = kv['country']
u.investigation = kv['investigation']
u.email = kv['email']
if User.objects.filter(name=kv['name']).exists():
return CallBack('用户名已经存在');
else:
u.save()
return OK
我用的Pycharm开发工具,设断点调试到最后面的u.save()这里直接跳过了。
换回sqlite3数据库就可以插入,用mysql就不行了。以前的数据是从sqlite导入到mysql中的。
请问怎么调整代码? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询