Note that there are some explanatory texts on larger screens.

plurals
  1. POContenttype object_id may not be NULL
    primarykey
    data
    text
    <p>I am confused with contenttype in django. First let me show my codes:</p> <p>models.py</p> <pre><code>class Comment(models.Model): owner = models.CharField(max_length=255) email = models.EmailField(max_length=255) posted_at = models.DateTimeField(auto_now_add=True) content = models.TextField(blank=True, null=True) contentmarkdown = models.TextField(help_text='Use Markdown syntax.') content_type = models.ForeignKey(ContentType, limit_choices_to=models.Q( app_label='post', model='post') | models.Q(app_label='comment', model='comment')) object_id = models.PositiveIntegerField() content_object = generic.GenericForeignKey('content_type', 'object_id') def save(self, *args, **kwargs): import markdown self.content = markdown.markdown(self.contentmarkdown) super(Comment, self).save(*args, **kwargs) </code></pre> <p>my views.py</p> <pre><code>def create(request): if request.method == 'POST': print 'POST data: ', request.POST form = CommentForm(request.POST) #app_label, model = request.POST.get('model').split('.') if form.is_valid(): comment = Comment() content_type = ContentType.objects.get(app_label="comment", model="comment") object_id = ? comment = Comment.objects.create( content_type = content_type, object_id = object_id, contentmarkdown = request.POST.get('contentmarkdown'), owner= request.POST.get('owner'), email = request.POST.get('email') ) return HttpResponseRedirect("/") </code></pre> <p>urls.py</p> <pre><code>from django.conf.urls import patterns urlpatterns = patterns('', (r'^create/$', 'comment.views.create'), </code></pre> <p>html</p> <pre><code>{% load i18n %} &lt;div class="comment"&gt; &lt;form action="{% url "comment.views.create" %}" method="post"&gt; {% csrf_token %} {% for field in form %} {{ field.label_tag }} {{ field }}&lt;p&gt; {% endfor %} &lt;input type="submit" value="{% trans "Submit" %}"&gt; &lt;/form&gt; &lt;/div&gt; </code></pre> <p>forms.py</p> <pre><code>from django import forms from comment.models import Comment from django.forms import ModelForm class CommentForm(ModelForm): def __init__(self, *args, **kwargs): super(CommentForm, self).__init__(*args, **kwargs) self.fields['owner'].label = 'Name' self.fields['contentmarkdown'].label = '' class Meta: model = Comment exclude = ['content', 'content_type', 'object_id' ] </code></pre> <p>Now my question is that : I got this error: </p> <pre><code>object_id may not be NUL </code></pre> <p>1- How can I get object_id? 2- What am I supposed to write object_id = ? 3- There is nothing like id if I write this request.POST.get(?) Please can you tell me how can I figure out object_id ?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload