Hi,

I am trying to save the model form and getting error that foreign key 
column is not there. 

*Error:*
column "connection_type_id" of relation "connection_details_test" does not 
exist ( There is no column connection_type_id, why its looking for this 
column, should I change my model?)

*Models:*
*======*

class ConnectionTypes(models.Model):
     * connection_type_id *= 
*models.IntegerField(primary_key=True,default=re_sequence('connection_type_seq'))*
      connection_type_name = models.CharField(max_length=100)
      connection_type_desc = models.CharField(max_length=300)
      connection_type_category = models.CharField(max_length=100)
      last_update_date = models.DateTimeField(default=dbcurr_ts)

      class Meta: 
            managed = False
            db_table ='connection_types_test'
            verbose_name = 'connection_types_test'
            verbose_name_plural = 'connection_types_test'

      def __str__(self):
        return str(self.connection_type_id)
    


class ConnectionDetails(models.Model):
      connection_id = 
models.IntegerField(primary_key=True,default=re_sequence('connection_seq'))
      connection_name = models.CharField(max_length=200)
      
*connection_type = models.ForeignKey(ConnectionTypes, on_delete=models.CASCADE)*
      endpoint = models.CharField(max_length=100)
      port = models.IntegerField()
      login_id = models.CharField(max_length=100)
      login_password = fields.CharPGPPublicKeyField(max_length=100)
      connection_string_1 = fields.CharPGPPublicKeyField(max_length=100)
      connection_string_2 = fields.CharPGPPublicKeyField(max_length=100)
      connection_string_3 = fields.CharPGPPublicKeyField(max_length=100)
      aws_region = models.CharField(max_length=20)
      owner_id = models.IntegerField()
      last_update_date = models.DateTimeField(default=dbcurr_ts)
      working_schema = models.CharField(max_length=100)
      service = models.CharField(max_length=100)

      def generate_enc(mystrenc):
          return 'pass'

      class Meta:
            managed = False
            db_table = 'connection_details_test'
            verbose_name = 'connection_details_test'
            verbose_name_plural = 'connection_details_test'

*Model Form :*
*==========*

class ConnectionForm(forms.ModelForm):

    login_password = forms.CharField(widget=forms.PasswordInput())
    owner_id = forms.IntegerField(widget=forms.HiddenInput(), required=False)
    
    class Meta:
        model = ConnectionDetails
        exclude = ['connection_id','last_update_date']


*View.py*
*======*
def addconnection(request):
    connectionform = ConnectionForm(request.POST or None)
    if connectionform.is_valid():
        ownerqs = AuthUser.objects.values('id').get(username = 
request.user.username)
        connectionform.cleaned_data['owner_id'] = int(ownerqs['id'])
        connectionform.save()
        messages.success(request, f"sucess!")
    else:
        messages.success(request, f"Failure!")
    return render(request,'main/ssaddconnection.html',{"cform":
    
connectionform,"CanUseMod":UserModules.objects.filter(user_id=request.user.id).filter(module_id=1).count(),"UserIsAuth":request.user.is_authenticated})
    
Anyone can help me on this??

Thanks,
Aruna 
On Saturday, 23 October 2021 at 18:53:38 UTC+1 sutharl...@gmail.com wrote:

> cool! mention not :)
>
> On Thu, 21 Oct 2021 at 19:57, Aruna Priya Nagarajan <
> arunapriya...@gmail.com> wrote:
>
>>
>> yeah, it is a foreign key and I have put integer field instead of foreign 
>> key in the model. I changed it now and its working by itself without 
>> specifying ModelChoiceField. 
>>
>> Thanks for your help!! 
>>
>>
>> On Wednesday, 20 October 2021 at 16:07:04 UTC+1 sutharl...@gmail.com 
>> wrote:
>>
>>> is `ConnectionTypes` a foreign key to `ConnectionDetails`?
>>> in that case you don't need to put it as a field in form, it will be 
>>> added automatically in the form. 
>>> On Wednesday, 20 October 2021 at 18:47:44 UTC+5:30 Aruna Priya wrote:
>>>
>>>> Hi,
>>>>
>>>> I am trying to create a form from model and the model has a foreign key 
>>>> and am not able to populate the values from the column it refers to.
>>>>
>>>> My form,
>>>>
>>>> class ConnectionForm(forms.ModelForm):
>>>>
>>>>  connection_type = 
>>>> forms.ModelChoiceField(queryset=ConnectionTypes.objects.all(), 
>>>> to_field_name='connection_type_id')
>>>>
>>>>     class Meta:
>>>>         model = ConnectionDetails
>>>>         exclude = ['connection_id','last_update_date']
>>>>
>>>>
>>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Django users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to django-users...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-users/ddb8c862-57fc-4bb0-97a0-f5c235b00a1fn%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/django-users/ddb8c862-57fc-4bb0-97a0-f5c235b00a1fn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/3000878a-cc44-4fd9-9c2b-2f72ce85d664n%40googlegroups.com.

Reply via email to