"मैं रिपोर्ट बनाने के लिए ... सक्षम होने के लिए प्यार होता रिपोर्टों कोड करने के लिए बिना"
तो होगा मैं दुख की बात है, हालांकि, प्रत्येक रिपोर्ट अद्वितीय लगती है और कस्टम कोड की आवश्यकता होती है।
Django मॉडल से CSV तक आसान है। अपनी कुछ रिपोर्टों के साथ वहां शुरू करें।
import csv
from myApp.models import This, That, TheOther
def parseCommandLine():
# setup optparse to get report query parameters
def main():
wtr= csv.DictWriter(sys.stdout, ["Col1", "Col2", "Col3"])
this, that = parseCommandLine()
thisList= This.objects.filter(name=this, that__name=that)
for object in thisList:
write.writerow(object.col1, object.that.col2, object.theOther.col3)
if __name__ == "__main__":
main()
एचटीएमएल बहुत आसान है - Django एक HTML टेम्पलेट भाषा है। Render_to_response की बजाय, आप बस अपना टेम्पलेट प्रस्तुत करते हैं और इसे stdout पर लिखते हैं। और दिलचस्प रूप से एल्गोरिदम का मूल एक सीएसवी लिखने के समान ही है। इतना ही पर्याप्त है कि - बिना चतुरता के - आपके पास एक डिज़ाइन पैटर्न होना चाहिए जो दोनों करता है।
एक बार जब आप CSV काम कर रहे हों, तो Django के टेम्पलेट का उपयोग करके HTML जोड़ें।
पीडीएफ कठिन हैं, क्योंकि आपको वास्तव में कुछ विस्तार में स्वरूपण को काम करना है। इसके लिए बहुत सारे पायथन पुस्तकालय हैं। दिलचस्प बात यह है कि, पीडीएफ लेखन के लिए समग्र पैटर्न सीएसवी और एचटीएमएल लेखन के समान ही है।
ईमेलिंग का अर्थ है पायथन के smtplib सीधे या Django के email पैकेज का उपयोग करना। यह बहुत मुश्किल नहीं है। सभी टुकड़े वहां हैं, आपको बस कुछ वितरण सूची में उत्पादित आउटपुट फ़ाइलों को ईमेल करने की आवश्यकता है।
शेड्यूलिंग crontab
का सर्वोत्तम उपयोग करने के लिए थोड़ी सी सोच लेता है। यह - शायद - नौकरी का सबसे कठिन हिस्सा है।
स्रोत
2009-04-27 13:48:50
बहुत महत्वपूर्ण टिप्पणी: एक्सएचएमएल 2 पीडीएफ/पीसा जीपीएल – sorin
के तहत लाइसेंस प्राप्त है वाणिज्यिक लाइसेंस वर्तमान में 500 EUR है। – sorin
आपकी प्रतिक्रियाओं के लिए धन्यवाद सोरिन –