def add_newsletter_file(request, key): newsletter = Newsletter.get(key) url = blobstore.create_upload_url(url_for("admin/add_newsletter_file", key=key)) form = NewsletterFileForm(action=url) form.csrf_protected = False if request.method == "POST" and form.validate(request.form): upload_files = get_uploads(request, "file") if not len(upload_files): return redirect(url_for("admin/add_newsletter_file", key=key)) blob_info = upload_files[0] bl = blobstore.BlobInfo.get(blob_info.key()) filename = os.path.basename(bl.filename.replace("\\", "/")) file_ = File( filename=filename, content_type=blob_info.content_type, blob_key=str(blob_info.key()), length=blob_info.size ) file_.put() newsletter.n_price_list.append(str(file_.key())) newsletter.put() return redirect(url_for("admin/edit_newsletter", key=key)) return render_to_response( "postman/admin/newsletters/add_file.html", {"form": form.as_widget(), "newsletter": newsletter, "key": key} )
def index(request): url = blobstore.create_upload_url(url_for('price_list/admin')) form = PriceListForm(action=url) form.csrf_protected = False if request.method == 'POST' and form.validate(request.form): desc = form['description'] upload_files = get_uploads(request, 'file') if len(upload_files): blob_info = upload_files[0] if blob_info.size: file = File(blob=blob_info.key()) file.name = file.get_name file.put() price_list = PriceList(file=file.key, description=desc) price_list.put() else: blob_info.delete() return redirect(url_for('price_list/admin')) prices = PriceList.query() return render_to_response('price_list/admins/index.html', {'form': form.as_widget(), 'prices': prices})