I tried using FormView but kept running into errors.  I used your second 
response and it worked!  I don't fully understand the code, but it seems to 
work flawlessly.

Thank you so much! I own you a big one.

On Wednesday, October 25, 2017 at 5:57:04 AM UTC-4, k2527806 wrote:
>
> that your code : 
> class CreatePost(CreateView):
>     model = Post
>
>     def form_valid(self, form):
>         form.instance.user = self.request.user
>         return super(CreatePost, self).form_valid(form)
>
> On Wed, Oct 25, 2017 at 1:22 PM, mohammad k <k252...@gmail.com 
> <javascript:>> wrote:
>
>> use FormView
>>
>>
>> https://docs.djangoproject.com/en/1.11/ref/class-based-views/generic-editing/#formview
>>
>> On Wed, Oct 25, 2017 at 1:21 PM, mohammad k <k252...@gmail.com 
>> <javascript:>> wrote:
>>
>>> class Upload(FormView):
>>>     http_method_names = ['get', 'post']
>>>     template_name = 'public/upload.html'
>>>     success_url = reverse_lazy('upload')
>>>     form_class = UploadForms
>>>
>>>     def get(self, request, *args, **kwargs):
>>>         form = self.form_class(user=request.user)
>>>         return render(request, self.template_name, {'form': form})
>>>
>>>     def post(self, request, *args, **kwargs):
>>>         form = self.form_class(request.POST, request.FILES, 
>>> user=request.user)
>>>         if form.is_valid():
>>>             data = form.save(commit=False)
>>>             data.user = request.user
>>>             data.save()
>>>             messages.add_message(request, messages.SUCCESS, 
>>> self.success_message)
>>>             return redirect(self.success_url)
>>>         return render(request, self.template_name, {'form': form})
>>>
>>> On Wed, Oct 25, 2017 at 3:22 AM, Jack Zhang <valac...@gmail.com 
>>> <javascript:>> wrote:
>>>
>>>> Thanks for your response.  This is an off-topic question but I can't 
>>>> figure out how to get 'request' working.  I'm using the CreateView generic 
>>>> class, so there's no space to insert 'request'.  This is what my code 
>>>> looks 
>>>> like.  When I try to run it, it tells me that request is not found.  
>>>>
>>>> class ListingCreateView(LoginRequiredMixin, CreateView):
>>>>     model = BuyerListing
>>>>     
>>>>     form_class = PostListing(self.request.POST)
>>>>     if form.is_valid():
>>>>         form_save = form.save(commit=False)
>>>>         form_save.user = request.user # user is logged in
>>>>         form.save()
>>>>         
>>>>     def get_queryset(self):  # the user want to edit this post must be 
>>>> owner this post
>>>>         post_qs = super(PostListing, self).get_queryset()
>>>>         return post_qs.filter(user=self.request.user)
>>>>
>>>> On Tuesday, October 24, 2017 at 12:35:15 PM UTC-4, k2527806 wrote:
>>>>>
>>>>> try that in your views
>>>>>
>>>>> form = Dog_Form(request.POST)
>>>>> if form.is_valid():
>>>>>     form_save = form.save(commit=False)
>>>>>     form_save.user = request.user # user is logged in
>>>>>     form.save()
>>>>>
>>>>>
>>>>> On Tue, Oct 24, 2017 at 7:37 PM, Jack Zhang <valac...@gmail.com> 
>>>>> wrote:
>>>>>
>>>>>> Let's say I have a model called 'Dogs'.  Users can create instances 
>>>>>> of Dogs.  Let's say we have a user called User1.  I have 2 questions:
>>>>>>
>>>>>> 1. When User1 creates an instance of Dogs, how do I automatically 
>>>>>> assign that instance to User1?  I tried using a model field like this 
>>>>>> but 
>>>>>> it doesn't pick the user automatically:
>>>>>>
>>>>>> user = models.ForeignKey(User, unique=False)
>>>>>>
>>>>>> 2. After the instance has been created, how do I make the instance 
>>>>>> only editable and removable by the user who made it?  Basically, if 
>>>>>> User1 
>>>>>> creates an instance of Dogs, only User1 can edit and delete that 
>>>>>> instance. 
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>> -- 
>>>>>> 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 post to this group, send email to django...@googlegroups.com.
>>>>>> 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/dedbfe8b-1013-4844-b142-1e8615a1ef9a%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/django-users/dedbfe8b-1013-4844-b142-1e8615a1ef9a%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 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 <javascript:>.
>>>> To post to this group, send email to django...@googlegroups.com 
>>>> <javascript:>.
>>>> 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/950d853a-ade3-4d27-8e23-a47c6b70c80e%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/django-users/950d853a-ade3-4d27-8e23-a47c6b70c80e%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 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 post to this group, send email to django-users@googlegroups.com.
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/3b9b7b1a-78dd-4123-aef5-82e0b7089cb1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to