0

Ceci est une question liée à Django. J'ai une facture que j'ai créée à partir d'une base de données qui affiche les informations. Maintenant, je veux savoir si je peux envoyer ces détails à une adresse e-mail. J'ai essayé de regarder cette page au http://docs.djangoproject.com/en/dev/topics/email/, mais je ne sais pas si je suis à la recherche de cela. Je suppose que j'ai besoin de créer un formulaire peut-être aussi.Question Django: Une facture que je veux envoyer à un email

Éditer: Je veux quelque chose comme ceci - mais je veux renvoyer le formulaire entier. Pas seulement le sujet. Vérifiez les vues. Excuses pour la réponse tardive.

 # urls.py 
      urlpatterns = patterns('', 
       (r'^index/add_invoice/$', add_invoice), 
       (r'^index/invoice/$', invoice_info), 
       (r'^index/invoice_details/(?P<id>\d+)/$', invoice_details), 
      ) 

     #views.py 
     @login_required 
     def add_invoice(request): 
     if request.method == 'POST': 
      form = InvoiceForm(request.POST or None) 
      if form.is_valid(): 
      form.save() 
           send_mail('Subject here', 'Here is the message.', '[email protected]', ['pa[email protected]'], fail_silently=False 
    ) 
      return HttpResponseRedirect('/index/invoice/') 
     else: 
      form = InvoiceForm() 
     return render_to_response('add_invoice.html', {'form': form}, context_instance=RequestContext(request)) 

     #add_invoice.html 
     {% extends "base.html" %} 

     {% block content %} 
     <font face="verdana,news gothic,arial,heltevica,serif"> 
     <h3> Add Invoice</h3> 
     <font face="verdana,news gothic,arial,heltevica,serif"> 
     <form method= "POST" action=""> 
      <div id="form"> 
      <table> 
      {{form.as_table}} 
      </table> 
      <div align="center" STYLE=" margin-right:270px"> 
      <input type="submit" value="Submit" STYLE="background-color:#E8E8E8; color:#181818 "/> 
    </div> 
    </div> 
    </form> 
    {% endblock %} 

Répondre

0

Non, vous devez create a template et vous devez process it et vous devez send it.

+0

Dans le document il ils ont dit que vous pouvez créer dans (je devine views.py) en deux lignes d'importation django.core.mail send_mail send_mail (» Sujet ici ',' Voici le message. ',' [email protected] ', [' [email protected] '], fail_silently = Faux) mais je ne sais pas comment cela fonctionne. Quel serait le meilleur modèle pour écrire? – Shehzad009

+0

Tout ce que vous ressentez est approprié. http://www.google.com/search?q=sample+invoice –

+0

Non, je sais ce qu'est une facture et comment cela fonctionne, mais j'ai besoin de savoir comment coder c'est tellement un bouton que Je peux cliquer pour envoyer le reçu de la facture à l'adresse électronique du client. – Shehzad009

0

Vous devez utiliser le chargeur de modèles pour charger votre modèle de message et créer un contexte avec les variables souhaitées, puis convertir le modèle en chaîne. Voir le brut suivant (et incomplète) par exemple:

from django.template import Context, loader 
#More imports as needed for your code 

def my_view(request): 
    # Processing goes here... 

    my_template = loader.get_template('invoice_template.html') 
    my_context = Context({ 
     'purchased_items': purchased_items, 
    }) 
    invoice_email_message = my_template.render(my_context) 

    # send the email using invoice_email_message as your message