我是Django和Django休息框架的新手。
我有两个问题: 1. Django的auth.User附带一个id字段。我更愿意只使用电子邮件作为主键,我该怎么做?
(1452,'无法添加或更新子行:外键约束失败($(document).ready(function(){
var test="for testing purposes only";
alert(killSpaces(test));
});
。db_lab_rat
,CONSTRAINT researchproject_project
FOREIGN KEY({{ 1}})参考researchproject_proj_lead_researcher_id_cdf43d86_fk_researchp
(lead_researcher_id
)')
我认为管理面板会发送电子邮件而不是id,以便为lead_researcher属性创建项目。任何想法如何解决这个问题?
项目模型:
researchproject_user
任何帮助将不胜感激!
答案 0 :(得分:1)
不要覆盖默认主键。它导致重复错误或导致大数据库出现问题。如果需要,使用Serializer返回带有id的对象或删除其他字段。
from rest_framework import serializers
class ProjectSerializer(serializers.ModelSerializer):
class Meta(object):
model = Project
fields = ('name', 'stdy_goal', 'animal_welfare', 'start_date')
并且对博林场进行索引不是优选的,也不是一种好的做法。