没有人有Django的+ SWFUpload任何简单的代码示例?我已经在我的PHP应用程序中完美工作,但Django让我头疼。Django + SWFUpload的代码示例?
回答
不幸的是我不能给你任何非常详细的代码示例,但我有相当多的经验与SWFUpload的+ Django的工作(相片分享网站,我的工作)。无论如何,这里有几个要点,希望能帮助你在你追求幸福DjSWF :)
您将要使用的cookie插件(当然,如果你正在使用某种形式的基于会话的认证[如
django.contrib.auth
,并关心谁上传了什么)。的饼干插件从饼干作为POST发送数据,所以你必须找得到这回
request.COOKIES
(process_request
中间件在request.POST
在特定网址上寻找一个settings.SESSION_COOKIE_NAME
并转储到request.COOKIES
作品起到了很好的一些方法这个:)另外,请记住,你必须回东西在响应身体的SWFUpload将其识别为一个成功上传的尝试。我相信这已经在SWFUpload的最新测试版改变了,但无论如何,它的建议只是坚持东西在那里,像“OK”。对于故障,请使用类似
HttpResponseBadRequest
之类的东西。最后,如果您无法找到他们,上传的文件是在
request.FILES
:)
如果您有什么困惑我还没有涉及,随意张贴的东西更详细我很乐意提供帮助。
这是一个非常糟糕的问题的绝佳答案。第(1)点的第二段特别有助于我。谢谢。 – bouvard 2009-05-12 03:46:16
的Django版本的样品的SWFUpload的:
http://github.com/naltimari/django-swfupload-samples/tree/master
只要uploadify。好主意,但它只是越野车,尤其是在Windows上。
以下是我修复此问题(即我上传在Firefox中未能以302重定向)具体的Django的实现。
在我最初认为它与上传生成的页面,我看着饼干和发现的SessionID
ipdb> self.request.COOKIES
{'csrftoken': '43535f552b7c94563ada784f4d469acf', 'sessionid': 'rii380947wteuevuus0i5nbvpc6qq7i1'}
当我看到什么被张贴在SWFUploadMiddleware(使用Firefox时)我发现sessionid没有被设置。
在我生成一个包含上传处理程序的页面INTIAL看法,我加入了会话ID上下文。
context['sessionid'] = self.request.session.session_key
在我swfuploader设置,我添加的SessionID到PARAMS后的选项,如下所示:
post_params: {... "sessionid": "{{ sessionid }}" ...},
现在,当我在SWFUploadMiddleware望去,我能看到的SessionID被张贴,和我的上传开始工作,如果Firefox。
ipdb> request.POST
<QueryDict: {... u'session_id': [u'rii380947wteuevuus0i5nbvpc6qq7i1'],...}>
为了完整起见,我SWFUploadMiddleware看起来像这样...
from django.conf import settings
from django.core.urlresolvers import reverse
class SWFUploadMiddleware(object):
def process_request(self, request):
if (request.method == 'POST') and (request.path == reverse('upload_handler')) and request.POST.has_key(settings.SESSION_COOKIE_NAME):
request.COOKIES[settings.SESSION_COOKIE_NAME] = request.POST[settings.SESSION_COOKIE_NAME]
# http://stackoverflow.com/questions/6634666/403-forbidden-error-on-swfupload-and-django
# Fix for problem uploading images (403 error) in Firefox 20 and others
if request.POST.has_key('csrftoken'):
request.COOKIES['csrftoken'] = request.POST['csrftoken']
- 1. django-guardian示例源代码
- 2. SWFUpload示例/信息和Java
- 3. 的Django扬鞭示例代码
- 4. 故障运行示例django代码
- 5. Django文档:resolve()代码示例
- 6. 开源代码示例 - Django,Backbone.js(和Coffeescript)
- 7. 代码示例
- 8. django:运行'django示例'时没有ForeignKey'错误教程代码
- 9. onFocusChange代码示例?
- 10. Manatee.Trello:Webhook代码示例
- 11. 小代码示例
- 12. TTXMLParser示例代码?
- 13. GtkImageView示例代码
- 14. WebRTC代码示例
- 15. HDF5示例代码
- 16. CATiledLayer:示例代码
- 17. GDK示例代码
- 18. AdadeltaOptimizer示例代码
- 19. 伪代码示例
- 20. JSONRequest.get示例代码
- 21. LINQ示例代码...
- 22. 的JMeter的示例代码
- 23. 好的Clojure代码示例?
- 24. ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering的代码示例?
- 25. 的JavaScript代码示例
- 26. 的Android SSH示例代码
- 27. ReSharper的示例代码
- 28. imgscalr的示例代码AsyncScalr
- 29. POST + cookie的示例代码?
- 30. Base64ToHex()的代码示例
-1:无码。 -1:无错误追踪或其他消息。 – 2009-03-05 00:30:52