@ru_python

Страница 316 из 9768
Pavel
14.02.2016
14:19:30
за год-два, если время терять не будешь, будешь джанго владеть очень сносно

Whore Amazing
14.02.2016
14:19:48
будем надеяться

Pavel
14.02.2016
14:20:36
все будеть збс

Denis 災 nobody
14.02.2016
14:33:07
а потом находишь идиотские ошибки в коде, который уже 14 лет никто не трогал
И в коде было ошибки, которые в паре делают нужное, но 1 надо пофиксить...

Google
Denis 災 nobody
14.02.2016
14:33:22
И всё ломается

Whore Amazing
14.02.2016
14:45:45
так нечееееестно в гайдах все подробно расписали по входу и выходу и забили нахер на регистрацию

Ilya
14.02.2016
14:50:58
Whore Amazing
14.02.2016
14:51:11
ААААА я опять нихера не понимаю

так чего-то сломал совсем не там, где писал

откуда он несуществующее поле-то взял?

кажется, он сам сгенерил себе запрос какой-то левой колонки в sql и теперь жалуется на ее отсутствие ну не пидр ли?

Pavel
14.02.2016
16:00:17
опечатка возможно.

то, что джанга сама себе придумывает, она корректно создаёт (по возможности).

Whore Amazing
14.02.2016
16:00:58
да нет, он вполне определенно хочет колонку author_id которую, как я понял, сгенерировал на основе поля author

правда, я так и не понял, почему он не смог ее создать сам

Google
Pavel
14.02.2016
16:04:23
python manage.py makemigrations && python manage.py migrate

Whore Amazing
14.02.2016
16:05:31
хм. когда я раньше добавлял поля в уже готовые модели, не надо было миграции делать, вроде.

Pavel
14.02.2016
16:06:22
всегда надо делать миграцию, когда ты меняешь модель.

Whore Amazing
14.02.2016
16:06:49
богом клянусь, пару раз не надо было.

ладно, хрен с ним. тут другая засада. не может быть у foreignkey blank'а, говорит.

C:\Users\user\Documents\django\test1>manage.py makemigrations You are trying to add a non-nullable field 'author' to question without a defau t; we can't do that (the database needs something to populate existing rows). Please select a fix: 1) Provide a one-off default now (will be set on all existing rows) 2) Quit, and let me add a default in models.py Select an option:

почему он, кхм, стал вдруг non-nullable?

Pavel
14.02.2016
16:20:10
покажи строчку про author из models.py

Whore Amazing
14.02.2016
16:20:39
author = models.ForeignKey(User, blank=True)

User, разумеется, импортировал

Pavel
14.02.2016
16:21:52
blank относитсяя к модели, а null=True - к записи в бд. тут какая-то очень тонкая грань, но я их всегда веду парой: blank=True, null=True. И я об этом уже писал два часа назад.

Whore Amazing
14.02.2016
16:22:26
а, я думал, что либо-либо. потому что в m2m было просто blank, без null

Solyar
14.02.2016
17:14:42
Всем привет ребят. Что посоветуете почитать по пайтону чтобы вникнуть в язык. До этого долгое время ковырял Lua и C#. Буду благодарен если подкините парочку сурсов чтобы вникнуть в процесс. Можно и вообще для чайников литру ибо люблю начинать с нуля.

Older
14.02.2016
17:19:58
https://www.ibm.com/developerworks/ru/library/l-python_part_1/

Solyar
14.02.2016
17:20:39
Спасибо

Sergey
14.02.2016
19:08:41
Всем привет! Не подскажите как тут подставить базу при создании экземпляра: class BaseModel(Model): class Meta: database = database

Pavel
14.02.2016
19:30:08
что-то типа MyModel.using('database_name').create(...)?

Sergey
14.02.2016
19:45:51
что-то типа MyModel.using('database_name').create(...)?
Есть набор моделей наследующихся от базовой модели описанной выше. Все это в отдельном файле, база же инициализируется в точке входа, надо как то базовой модели скормить БД из точки входа.

Pavel
14.02.2016
20:00:38
через DatabaseRouterы?

Google
Sergey
14.02.2016
20:05:57
Pavel
14.02.2016
20:06:46
механизм, позволяющий динамически выбирать базу данных для моделей.

там вроде можно чуть не для каждого запроса менять базу. Но это смотреть надо, сам не пользуюсь.

Sergey
14.02.2016
20:08:33
Спасибо, изучу! Пока что решил проблему просто инициализировав базу там, где определяются модели.

Whore Amazing
14.02.2016
20:13:32
не особо понятно, зачем такое может быть нужно, но на всякий случай запомню.

Pavel
14.02.2016
20:18:31
не особо понятно, зачем такое может быть нужно, но на всякий случай запомню.
Например: пишем в одну мастер-базу данных, силами SQL-сервера она дублируется на несколько слейвов; читаем из слейвов в случайном порядке.

Whore Amazing
14.02.2016
20:18:54
но...зачем?

Pavel
14.02.2016
20:19:13
распределение нагрузки, когда один сервер не справляется.

В общем случае количество операций записи гораздо меньше, чем операций чтения. поэтому писать можно в одно, но читать из нескольких мест.

finkel
14.02.2016
20:27:25
а еще можно мастер - мастер, на этой наши админы обещали запилить

на этой неделе*

Solyar
14.02.2016
20:49:34
Ребят знаю что глупый вопроз но как реализовать такую вещь У нас есть файл в который с помощью комманды можно записать какие либо данные в нашем случае цифры Допустим у нас в файле есть цифры 1232313 1412515 2151251 И нам нужно вытащить определенную строчку как это реализовать?

Pavel
14.02.2016
20:51:04
Вопрос в том, как прочитать пятую строку из файла?

Aragaer
14.02.2016
20:51:16
sed -n 5p

а, питон

[Anonymous]
14.02.2016
20:51:39
мне кажется клево будет какой нибудь yield присобачить тут

Solyar
14.02.2016
20:51:39
Не обязательно пятую. 10 , 120 или же 250. Строку указывать нужна вручную

нужно*

[Anonymous]
14.02.2016
20:51:53
а, тогда не надо йилд

Aragaer
14.02.2016
20:52:04
with open("path/to/file") as in_file:     result = in_file[4]

Google
Aragaer
14.02.2016
20:52:09
может даже и прокатит

если так не покатит, то в цикле до нужного перемотать. Там генератор

Pavel
14.02.2016
20:52:46
или в os.system("head -n250 file.txt | tail -1")

Solyar
14.02.2016
20:53:06
Если можно пережевать то поясните пожалуйста. Застрял на обработке файлов и строк и все тут.

Aragaer
14.02.2016
20:53:14
блин, хед, тейл - я вон на седе написал в 3 байта

Solyar
14.02.2016
20:54:01
или в os.system("head -n250 file.txt | tail -1")
а можно пояснить за строку?

Pavel
14.02.2016
20:54:41
а можно пояснить за строку?
это неправильная строка, выше была лучше. а так - берём первые 250 строк, а потом берём одну последнюю от них.

Admin
ERROR: S client not available

Solyar
14.02.2016
20:55:17
А если мне нужна определенная? Скажем у меня 250 строк а нужна 142 или 100. Как тогда поступить?

[Anonymous]
14.02.2016
20:55:31
readline()

не?

блин ща

Aragaer
14.02.2016
20:56:59
ну там в тексте задаешь нужный номер

Kolyann
14.02.2016
20:57:12
with open('file.txt') as f: return f.readlines()[num]

Aragaer
14.02.2016
20:57:50
кстати между хед+тэйл и сед есть разница. Если строк меньше 250, то хед-тейл вернет последнюю, а сед ничего

Solyar
14.02.2016
20:58:46
with open('file.txt') as f: return f.readlines()[num]
Точно ты же писал об этом

-_-

Pavel
14.02.2016
20:59:11
import itertools fd = open(filename, 'r') z=itertools.dropwhile(lambda e: e[0]!=5, enumerate(fd)) line = next(i)[1] print(line)

счёт строк с нуля.

Aragaer
14.02.2016
20:59:34
а закрывать кто будет?

Google
Pavel
14.02.2016
20:59:46
os

Aragaer
14.02.2016
21:00:02
лучше всего через with open as

Pavel
14.02.2016
21:00:16
может мне ещё тут try\except выписать и логирование ошибок?

надо понимать, что код пишется в окошке телеграмма.

Aragaer
14.02.2016
21:00:46
нет, with open as будет достаточно. Трай-эксепты улетают наружу и там адекватно обрабатываются

если написал open, то до with open as один шаг

Solyar
14.02.2016
21:01:40
В чем проблема?

Kolyann
14.02.2016
21:01:52
оно не в функции

Aragaer
14.02.2016
21:01:53
в том, что ретурн не в функции?

Pavel
14.02.2016
21:02:01
если вводить with, то придётся пробелы вставлять в куждую строку, а ттут и так окно не широкое

Solyar
14.02.2016
21:02:08
-_-

туплю

секунду

Aragaer
14.02.2016
21:02:15
тут беда в том, что если в файле 100500 строк, оно ж все прочитает

с энумерейтом и дропвайл в этом смысле правильнее

Kolyann
14.02.2016
21:03:07
в том файле вряд ли будет больше пары тысяч строк

Pavel
14.02.2016
21:03:36
у меня там в четвёртой строке косяк, dropwhile в одну переменую сохраняется, а next у другой дёргается, и что? принцип же понятен, надеюсь?

Solyar
14.02.2016
21:04:48
При таком виде все работает

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