On Mon, Nov 27, 2017 at 7:58 PM, Kubilay Yazoğlu . <[email protected]>
wrote:

> Oh, that's a life saver information. Thanks. I edited my code.
> Unfortunately, only thing that has changed is the name of the error which
> looks like this right now: NOT NULL constraint failed:
> photo_photo.contest_id
>
> I'm going to take a break and try to solve the problem tomorrow. I
> appreciate your help.
>

Alright, for tomorrow then:

I don't usually use "initial" but if you are excluding (or not including)
the field in the form, "initial" would not be useful. A workaround would be:


    if form.is_valid():
        photo = form.save(commit=False)

        photo.contest = random_item

        photo.owner = 'SUMMERSON'

        photo.save()



>
> On Tue, Nov 28, 2017 at 1:32 AM, Matemática A3K <[email protected]>
> wrote:
>
>>
>>
>> On Mon, Nov 27, 2017 at 7:30 PM, Matemática A3K <[email protected]
>> > wrote:
>>
>>>
>>>
>>> On Mon, Nov 27, 2017 at 7:18 PM, Kubilay Yazoğlu <[email protected]>
>>> wrote:
>>>
>>>> Nice try but I'm still getting this error: IntegrityError at
>>>> /photo/create/
>>>>
>>>> NOT NULL constraint failed: photo_photo.contest_id_id
>>>>
>>>>
>>>> I tried with both 'contest': random_item  and 'contest_id': 
>>>> random_item.contest_id. (I don't know why you wrote contest instead of 
>>>> contest_id. Field name is contest_id)
>>>>
>>>> That's because what you are passing is empty and the field is required.
>>> Are you sure that you have Contest objects?
>>>
>>> There is a convention in Django (models and ORM), "object.foreign_key"
>>> gives you the object, while "object.foreign_key_id" gives you the id of
>>> that object (and is what it is stored in the database). You should name
>>> your field only "contest" for avoiding confusions.
>>>
>>
>> Try "contest_id": random_object
>>
>>
>>
>>>
>>>
>>>
>>>>
>>>> 28 Kasım 2017 Salı 01:03:50 UTC+3 tarihinde Matemática A3K yazdı:
>>>>
>>>>>
>>>>> items = Contest.objects.all()
>>>>>> random_item = random.choice(items)
>>>>>>
>>>>>> if request.method =='POST':
>>>>>>     data = {'contest': random_item,
>>>>>>             'ownername': 'SUMMERSON',
>>>>>>             }
>>>>>>     form=PhotoForm(request.POST, initial=data)
>>>>>>     if form.is_valid():
>>>>>>         photo = form.save()  # Instances go in lowercase, otherwise you 
>>>>>> are doing it to the class
>>>>>> else:
>>>>>>     form = PhotoForm()
>>>>>>
>>>>>> --
>>>> 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 [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/django-users.
>>>> To view this discussion on the web visit https://groups.google.com/d/ms
>>>> gid/django-users/87731060-75a6-44c6-8d1f-56cba6d22278%40goog
>>>> legroups.com
>>>> <https://groups.google.com/d/msgid/django-users/87731060-75a6-44c6-8d1f-56cba6d22278%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>> --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "Django users" group.
>> To unsubscribe from this topic, visit https://groups.google.com/d/to
>> pic/django-users/EUOXhT4V9Is/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/django-users.
>> To view this discussion on the web visit https://groups.google.com/d/ms
>> gid/django-users/CA%2BFDnhLFdpf0Z%3DwSgtd3b7HTW_5xru7m963W%
>> 2Bo-g653RdX4w3Q%40mail.gmail.com
>> <https://groups.google.com/d/msgid/django-users/CA%2BFDnhLFdpf0Z%3DwSgtd3b7HTW_5xru7m963W%2Bo-g653RdX4w3Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> 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 [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/django-users.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/django-users/CALz%3DsVGYzWbk0%3DzoyMDa_
> 3MB3co7CNiez00aX4kSfFOiyN2Mmw%40mail.gmail.com
> <https://groups.google.com/d/msgid/django-users/CALz%3DsVGYzWbk0%3DzoyMDa_3MB3co7CNiez00aX4kSfFOiyN2Mmw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CA%2BFDnhK7EWSXsSEjSwXSE_C4bgjXo6wj53PRNsWiEq5kQpe9tA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to