class Biochemical_analysis_of_blood(CreateView):
model = BiochemicalAnalysisOfBlood
form_class = BiochemicalAnalysisOfBloodForm
template_name = "biochemical_analysis_of_blood.html"
success_url = reverse_lazy("patients")
def get_context_data(self, **kwargs):
context = super(Biochemical_analysis_of_blood, self).get_context_data(**kwargs)
patient = Patient.objects.get(id=1)
context["patient"] = patient
return context
def post(self, request, *args, **kwargs):
analysis = Analyzes()
sid = transaction.savepoint()
analysis.name = request.POST["name"]
analysis.patient_id = Patient.objects.get(id=1)
analysis.who_send = request.POST["who_send"]
analysis.who_is_doctor = request.POST["who_is_doctor"]
analysis.lab_user_id = Doctor.objects.get(id=request.POST["lab_user_id"])
analysis.additional_lab_user = request.POST["lab_user_add"]
analysis.date = '2017-06-18'
analysis.type = 3
analysis.date_analysis = '2017-06-18'
analysis.save()
return super(Biochemical_analysis_of_blood, self).post(request, *args, **kwargs)
j'ai algorithme suivant:quelques problèmes avec CreateView dans le Django
Render
BiochemicalAnalysisOfBloodForm
à l'utilisateurQuand il remplit les champs et appuie sur le bouton « Enregistrer » Je crée une nouvelle instance de
Analyzes()
et le remplir par programme et quand dans la méthode de poste, j'appellesuper().post()
puis les données des utilisateurs seront écrites sur le modèleBiochemicalAnalysisOfBlood
automatiquement? Mais j'ai erreur suivante:
NOT NULL constraint failed: laboratory_biochemicalanalysisofblood.analysis_id
Comment puis-je en mode manuel ajouter au modèle dans le champ « analyse » au début créé instance de Analyzes()
? Je ne comprends pas cette classe à la fin où je peux trouver des informations sur toutes ses possibilités
Pouvez-vous poster le contenu de votre formulaire BiochemicalAnalysisOfBloodForm? – SebCorbin
Pourquoi ne pas avoir un ID autofilled séparé et avoir un ID d'analyse? – mikep