2017-05-03 4 views
0

私はDjangoの非常に新しいユーザーです。私は、ボタンをクリックすると電子メール(ファックス用)を送信したいと思います。そこで、CustomerRequestUpdateViewのビューsend_faxを作成しました。私はここで少し混乱しています。このメソッドはPOST要求を使用する必要がありますか?テンプレートに 'send_fax'をどのようにレンダリングできますか?私は、そのメソッドをクラスで直接実装することができれば幸いです。POSTかどうかrender_to_response()またはrender()?

class CustomerRequestUpdateView(RequestUpdateView): 
    template_name = 'loanwolf/customers/request.html' 
    url_namespace = 'customers' 

    def send_fax(self): 

     subject = 'The contract of %s' % self.customer.email_user 
     contact_message = 'This is just a test for later on during this project' 
     from_email = settings.EMAIL_HOST_USER 
     to_email = [from_email, ] 

     send_mail(
      subject, 
      contact_message, 
      from_email, 
      to_email, 
      fail_silently=False, 
     ) 

    return #render(request, template_name, context) render_to_pdf() 

私はrender_to_response()またはちょうどrender()を使用することができると思ったが、私の方法を使用self、ないrequest。誰でもここで私を助けることができるだろうか?

ありがとうございます!

+0

それは全く、関数のみが実行されるHTTP要求の1という名前呼ば立つような方法は、何もしないことを – Sayse

+0

関連:[派遣コード](https://github.com /django/django/blob/master/django/views/generic/base.py#L78) – Sayse

答えて

0

何をページに表示しますか? これを行うには、クラスベースのビューは必要ありません(ただし、使用することはできます)。あなたは、単に書くことができます。

def my_view(request): 
    send_mail(paramters here) 
    # Add whatever object you think you'd need on the page in the context (the 
    # third paramter of render {}. 
    # render adds request to response so it's preferred. render_to_response may be deprecated soon. If it has not been already 
    return render(request, 'loanwolf/customers/request.html', {}) 
関連する問題