отправить данные на внешний ключ вручную?

StackOverflow https://stackoverflow.com/questions/1207862

  •  05-07-2019
  •  | 
  •  

Вопрос

Я хочу сохранить данные в две таблицы mysql, это было хорошо, но теперь я изменяю форму поля Interget на FK ... проблема в том, что теперь я не могу отправить данные в поле FK ....

Я новичок в Django, но я работаю таким образом:

@login_required
def agregar_diligencia(request):    
    if request.method =='POST':
        form = DiligenciaForm(request.POST)
        #trac = Tracking()
        tracknum = 'ABCD458LK'
        if form.is_valid():
            from django.contrib.auth.models import User            
            User = User.objects.get(pk=request.user.id)            
            obj = form.save(commit=False)                        
            obj.socio = User            
            obj.status = 0            
            obj.secuencia = 1
            obj.save()
            t = Tracking()            
            t.track = tracknum
            t.diligencia = obj.id
            t.save()

            return HttpResponseRedirect('/accounts/diligencias/activas')


    else:  
        form = DiligenciaForm()

    return render_to_response('account/agregar_diligencia_form.html', 
                 { 'formulario':form },context_instance = RequestContext(request))

Где t.diligencia = obj.id (t.diligencia) - это мой FK, а obj.id - это данные, которые я хочу сохранить в FK

Извините за мой английский и спасибо.

Это было полезно?

Решение

Вы даже не указали, в чем проблема.

Однако я могу видеть, что вы перезаписываете User в этой строке:

    User = User.objects.get(pk=request.user.id)

Вы должны назначать user строчными буквами u, но я сомневаюсь, что это источник вашей проблемы, какой бы она ни была.

Другие советы

просто сделай

obj.socio = request.user
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top