В общем есть такая штука jQuery-File-Upload.
Забавный такой аплоадер файла. У меня в проекте пока отвечает за загрузку фоток. Тут есть туева хуча нюансов, но хрен бы с ними.
Есть даже связка с django и, кстати, не одна. Желающие сами найдут, а может и доку почитают.
Ну всем все хороша, решил вставить на отдельную страницу, где надо ставлю:
После этого запускаю, сам js отрабатывает на ура, а вот upload лезет вот с такой ошибкой:
Error: SyntaxError: Unexpected token <;
Я, конечно первом делом, почуял, что это у меня с темплейта этот косяк лезет. Ну уж больно знакомо получать такое в JS. Но тут у меня происходит разрыв шаблон, последний url отрабатывает в 200. Вот меня и начало колбасить. Кучу всякого хлама перепробовал, и вот только после профилирования запросов в хроме понял, что POST отправляется не в {% url 'upload' %}, а в '.'. Т.е. отправляет всё в туже страницу, что и загрузилось.
После не долгих изысканий, выяснилось, что надо сказать вот такое:
$('#fileupload').fileupload({
url: '{% url 'upload' %}', ...
Т.е. точно указать, где лежит handler нашего аплоадера.
Забавный такой аплоадер файла. У меня в проекте пока отвечает за загрузку фоток. Тут есть туева хуча нюансов, но хрен бы с ними.
Есть даже связка с django и, кстати, не одна. Желающие сами найдут, а может и доку почитают.
Ну всем все хороша, решил вставить на отдельную страницу, где надо ставлю:
После этого запускаю, сам js отрабатывает на ура, а вот upload лезет вот с такой ошибкой:
Error: SyntaxError: Unexpected token <;
Я, конечно первом делом, почуял, что это у меня с темплейта этот косяк лезет. Ну уж больно знакомо получать такое в JS. Но тут у меня происходит разрыв шаблон, последний url отрабатывает в 200. Вот меня и начало колбасить. Кучу всякого хлама перепробовал, и вот только после профилирования запросов в хроме понял, что POST отправляется не в {% url 'upload' %}, а в '.'. Т.е. отправляет всё в туже страницу, что и загрузилось.
После не долгих изысканий, выяснилось, что надо сказать вот такое:
$('#fileupload').fileupload({
url: '{% url 'upload' %}', ...
Т.е. точно указать, где лежит handler нашего аплоадера.