@ru_python

Страница 108 из 9768
11.01.2016
16:04:06
Ivan
11.01.2016
16:04:07
Я думаю, что строки 3 хватит

Aliaksiej
11.01.2016
16:07:31
Да нет же

Конкретный приемер

Google
Aliaksiej
11.01.2016
16:07:52
Строк 15 вполне себе ascii

А вот в 16 встречается левый символ

И все упало

Maxim robox
11.01.2016
16:09:00
И все упало
Не читал, но нагуглилось это: http://habrahabr.ru/company/mailru/blog/129476/

Aliaksiej
11.01.2016
16:09:14
Читал уже

Там про то, как генерить, чтобы Эксель схавал

Это я уже умею

Maxim robox
11.01.2016
16:09:44
А, чёрт. Точно.

Aliaksiej
11.01.2016
16:10:25
Хотя тоже хз, как оно на других локалях будет, но должно быть ок, учитывая utf8 bom

Maxim robox
11.01.2016
16:10:42
Хотя тоже хз, как оно на других локалях будет, но должно быть ок, учитывая utf8 bom
Вот этот тред на SO я находил. https://stackoverflow.com/questions/4221176/excel-to-csv-with-utf8-encoding

Там есть какой-то workaround с VB-макросом. Все остальные варианты — использовать другой табличный процессор (google spreadsheets, libreoffice calc, openoffice calc).

Aliaksiej
11.01.2016
16:12:04
Это все про то, чтобы нагрузить пользователя чем-то ненужным

Я не хочу, да и не могу им всем это объяснять

Google
Aliaksiej
11.01.2016
16:13:35
Chardet вроде как лучший способ. Осталось только понять, как оно будет вести себя на левых блобах

Мало ли что эти криворучки зальют

Вместо csv

Ivan
11.01.2016
17:06:08
Вместо csv
Выдавай им ошибки

У тебя проект настолько глобальный, что ты про экзотические локали думаешь?

Aliaksiej
11.01.2016
17:14:12
Это понятно

Скорее больше ориентирован на запад но в целом и другие юзать могут

Выдавай им ошибки
Так то чтобы выдать ошибку, нужно ж все равно пробовать читать, иначе достоверно не узнать

Maxim robox
11.01.2016
17:20:29
@GomZik ну вот тот сервис, куда я заливал csv, к слову, вообще не парился на счёт ошибок или каких-либо уведомлений, что мс офис — говно. Он просто не жрал это и всё.

Aliaksiej
11.01.2016
17:21:14
Ну у меня у самого рука не поднимится так сделать :)

Я то заведомо знаю, что чаще всего его будут экселем трогать

Maxim robox
11.01.2016
17:26:35
Ну у меня у самого рука не поднимится так сделать :)
Кстати, а ты не хочешь просто xls схавать?

Aliaksiej
11.01.2016
17:26:55
На платформе не принято

Ivan
11.01.2016
17:28:33
На платформе не принято
Таки в чем проблема? так инструкцию для пересохранения не нужно писать, а вот для эксепшна можно и написать. Типа "я попытался восстановить файл, но это не удалось из-за кодировки. Попробуйте сохранить вот так

Aliaksiej
11.01.2016
17:29:21
Да думаю в большинстве случаев прокатит решение

Какое есть

Ivan
11.01.2016
17:29:59
Да думаю в большинстве случаев прокатит решение
Кстати, а для non-ascii строки он что выдает?

Maxim robox
11.01.2016
17:30:20
Это, конечно, от бизнеса зависит, но я бы просто написал, мол хочу принимать csv в юникоде и таком-то таком-то формате. И выводить предупреждение, что мс офис, возможно, не умеет нормально делать, попробуйте пересохранить в чём-нибудь другом.

Aliaksiej
11.01.2016
17:30:37
Он выдаёт кодировку и вероятность, с которой именно она используется

Google
Ivan
11.01.2016
17:31:05
Он выдаёт кодировку и вероятность, с которой именно она используется
И в чем трабла для не-ascii-то? Ты говорил, что может там трабла быть какая-то

Maxim robox
11.01.2016
17:31:14
Потому что вариант с угадыванием кодировки какой-то тухловатый.

Aliaksiej
11.01.2016
17:31:33
Я ещё внутри пообсуждаем

Мы*

Ivan
11.01.2016
17:32:18
Потому что вариант с угадыванием кодировки какой-то тухловатый.
Не вижу ничего тухлого. Он внутри вероятности считает по сочетанию символов

Maxim robox
11.01.2016
17:33:04
Ну как я так сделаю, если на всей платформе оно работает, а у меня нет
Кстати, возможно, есть смысл тогда на своей стороне прогонять через libreoffice и пересохранять в юникоде.

Maxim robox
11.01.2016
17:35:46
Гемор
Ну да. Но хочется же юзеру угодить — изволь подстраиваться.

Ivan
11.01.2016
17:36:24
Ну да. Но хочется же юзеру угодить — изволь подстраиваться.
А ресурсов сколько кушать будет? И все ради трансфера

Maxim robox
11.01.2016
17:44:31
Aliaksiej
11.01.2016
17:44:56
Да и открывая локально так и не заметил, что оно детектировало кодировку

Может где-то специальная опция была, я не разбирался детально

Aliaksiej
11.01.2016
17:45:29
Оносамое

Maxim robox
12.01.2016
03:40:24
Что-то я не могу понять, как добавить контакт в телеграмм. Он раньше был у меня в телеграмме, потом я его удалил из телеграмма. В телефонной книге он все ещё есть. Другие контакты сами восстанавливались после таких процедур. А этот — нет.

Ilya
12.01.2016
03:41:30
удали номер в контакте

добавь

Google
Ilya
12.01.2016
03:41:35
перечитай на телефоне

проверь что номер больше нигде не светится

Maxim robox
12.01.2016
06:13:24
two scopes of django на редкость толковая и короткая книга.
500 страниц это разве короткая? Two scoops, кстати.

Pavel
12.01.2016
06:14:46
там такая организация, что её можно читать с любой главы. я осилил за пару недель трамвайных поездок, так что короткая.

Pavel
12.01.2016
07:01:38
не знаю, вроде кто-то пытался в вики-формате переводить. "Два шарика джанги", или как-то так.

Vlad
12.01.2016
07:02:34
Еще подскажите насколько плохо совмещать cbv и обычные функции?

Pavel
12.01.2016
07:04:22
а в чём проблема? Если вьюшка проще в виде функции, делай так.

Admin
ERROR: S client not available

Vlad
12.01.2016
07:07:41
В простых задачах намного проще использовать cbv классы. Меня интересует как в проектах делают. Делаю сейчас проект и может в будущем не я его поддерживать буду. Можно ли так делать и плохо ли это

Или какие бы у вас были впечатления от кода?

Whore Amazing
12.01.2016
07:14:16
что такое cbv?

Pavel
12.01.2016
07:14:25
class based views.

к слову, в очередноё раз напомню про ccbv.co.uk

cbv - это когда вьюшки не функции, а классы с развесистой системой mixin-ов. На первый взгляд очень сложно, но если втянуться, то трудно оторваться.

Maxim robox
12.01.2016
07:22:06
Почему нельзя просто унаследоваться от View вместо того, чтобы умирать?

Я вообще не пишу function views. Ради единообразия.

Да и они уже deprecated, разве нет?

Pavel
12.01.2016
07:25:47
Я тут вдруг поймал себя на мысли, что всегда пытался впихнуться в типовые вьюшки, переопределяя get_ методы. А наследоваться от View и сделать в def get(self, request) код обычной function view мне даже в голову не приходило. ?

Google
Pavel
12.01.2016
07:28:37
4 интранет проекта.

в годах - много, в часах работы - чуть.

Vlad
12.01.2016
07:29:27
Да и они уже deprecated, разве нет?
Можно пруф или это негласное соглашение питонистов?

Maxim robox
12.01.2016
07:31:14
Pavel
12.01.2016
07:33:39
django.contrib.auth на функциях.

Maxim robox
12.01.2016
07:35:14
django.contrib.auth на функциях.
Ну FBV ещё и не удалили. Но уже давно deprecated.

Whore Amazing
12.01.2016
07:36:21
вот я щас читаю все это и чувствую, что нихуя не понимаю

Pavel
12.01.2016
07:36:30
мне кажется, что FBV врядли вообще уберут. варнинг вкорячат и всё.

class ItemListView(ListView): model = Item paginate_by = 10 class ItemDetailView(DetailView): model = Item

первое даст тебе вью с пагинацией на 10 элементов, второе - вью для одного объекта, с pk переданном в урле. это дла начала.

в urls.py как обычно url(r'item/(?P<pk>.*)/', ItemDetailView.as_view(), name='item_detail'), url(r'item/', ItemListView.as_view(), name='item_list'), имена файлов шаблонов тебе джанга в эксепшене покажет.

Konstantin
12.01.2016
08:38:58
CBV вообще волшебная вещь. Одно удовольствие писать, даже простейшие вещи используя TemplateView. Захотел наколдовал там в контексте или get, post, а главное нет такого def user_get def user_post либо  if METHOD == 'POST' Как-то не фонтан с таким работать, если вкусил хоть чуть CBV

Pavel, а как код стилизировал в сообщении? Какую разметку телеграм хавает?

Pavel
12.01.2016
08:46:12
три многострочный код, одна - выделение inline

Ilya
12.01.2016
08:46:13
маркдаун

Pavel
12.01.2016
08:46:16
`

маркдаун только для ботов вроде?

Ivan
12.01.2016
08:46:35
вот так

не, не только

Ilya
12.01.2016
08:46:49
https://core.telegram.org/bots/api#using-markdown

Pavel
12.01.2016
08:47:11
*bold*

Страница 108 из 9768