私は数日間研究していますが、私はまだこれを理解できません!うまくいけば、仲間のStackOverflowerが私をここで助けることができます。Django管理コマンドからダウンロード可能なファイル
今、私はレポートを実行し、xlsxファイル(Excel)としてレポートを含む電子メールを送信するカスタムdjango管理コマンドを持っています。今、私はメールを受け取ってほしくない場合、人々がそれをダウンロードして自分自身のために見ることができるように、ウェブサイト上でレポートを得るための方法があるかどうか疑問に思っています。
私はすでに私のURLとHTMLテンプレートをセットアップしています。誰もがダウンロードできるように私のウェブサイトのテンプレートに私の管理コマンドから生成された私のレポートへのリンクを入れてください! !助けてください!私は立ち往生した! (凝縮)
管理コマンド
FILENAME = tempfile.mkstemp('.xlsx', 'EDIComplianceReport')
class Command(BaseCommand):
def handle(self, *args, **options):
final_results[carrier_scac] = carrier_results
ts_util.sendMessage(['[email protected]'],
'EDI Compliance Report', '\n EDI Compliance Report Attached',
self.populateSpreadsheet(final_results))
def populateSpreadsheet(self, results):
workbook = xlsxwriter.Workbook(STATICFILES_DIRS + 'ediportal/ComplianceSummaryReports/' + str(datetime.now().strftime('%Y%m%d%H%M%S'))) #appends a unique time at the end of the file to prevent overwrite
format01 = workbook.add_format({'border': 1, 'bold': True,'align': 'center', 'bg_color': '#DDDDDD'})
format02 = workbook.add_format({'border': 1, 'bold': True, 'bg_color': '#9999FF', 'align': 'center'})
format03 = workbook.add_format({'border': 1, 'bold': True, 'font_color': 'red', 'bg_color': 'white', 'align': 'center'})
format04 = workbook.add_format({'border': 1, 'bold': True, 'bg_color': 'white', 'align': 'center'})
worksheet = workbook.add_worksheet("Summary")
row = 0
col = 0
sorted_carriers = list(CARRIERS.keys())
sorted_carriers.sort()
for i, carrier in enumerate(sorted_carriers):
worksheet.write(i+row, 0, carrier, format01)
worksheet.write(i+row, 1, 'Estimated Overall Compliance', format01)
worksheet.write(i+row+1, 1, results[carrier]['overall_compliance'], format03)
for ind, code in enumerate(CARRIERS[carrier].split(',')):
if code != 'overall_compliance':
worksheet.write(i+row, ind+2, code, format02)
worksheet.write(i+row+1, ind+2, results[carrier][code], format04)
row += 2
workbook.close()
return FILENAME[1]
はこのように、私はEDIComplianceReport.xslxと呼ばれるファイルを提供し、他の人がHTMLテンプレートにリンクとしてダウンロードできるようにしたいです。
現在、私のローカルホストマシン上で実行されています! アイブ氏は、静的なフォルダにExcelブックを保存し、そこからそれをつかむのアイデアを持っていたが、私は正確なコードアウトちょうどカントの図は、
のように見えますが、サーバー上で観測誤差とは何ですか? Apacheのerror_logsを確認してください。許可の問題がありますか? – cutteeth
それは私はエラーの任意のタイプを取得していない。ただ、私のウェブサイトにダウンロード可能なファイルを最初に実装する方法はわかりません! –
media_rootとmedia_urlを使用してダウンロードディレクトリを設定できます。 – cutteeth