Александр Аксентьев, к удивлению, но книжки есть.
На русском: Райан Митчелл. Скрапинг вебсайтов с помощью Python.
На английском: Dimitrios Kouzis-Loukas, Learning Scrapy.
Это из того, что попадалось на глаза.
Ничего не могу посоветовать по поводу моделей. Но, как постоянный пользователь, могу дать пару рекомендаций, на которые вы еще не обратили внимание.
1. Определитесь с целью.
Если будете читать лишь художественную литературу, то у Вас все упрощается до нельзя.
Если же, как я, и техническую, то вылезают два следующих нюанса.
2. Определить поддерживаемые форматы.
Для чтения художественных книг этот пункт почти не важен: epub и fb2 поддерживают почти все читалки.
Для чтения технической литературы начинается веселье. Почти вся техническая литература издается в pdf и djvu (редко и обычно старые). Так что нужна и их поддержка.
3. Диагональ.
Для художественной литературы это не важно, потому что epub и fb2 имеют возможность учитывать ширину экрана и переносить текст.
А вот для технической литературы это важно. PDF и DJVU - статичны. На маленьких читалках вы будете либо уменьшать масштаб, либо двигать страницу, чтобы прочитать невидимый кусок.
На моих 6 дюймах я всегда масштабирую, в итоге половина pdf (с большими буковками) читается вполне нормально, но другая половина pdf доставляет боль. Представьте журнал формата А4 с мелким текстом, а теперь мысленно сожмите его до 6 дюймов, текст не разобрать.
Так что если Вы будете читать часто pdf книжки с мелким текстом, то читалку берите лучше 8 дюймов, не так компактно, но возможно не важно. А вот для таких вот журналов лучше все 10 дюймов.
Neonoviiwolf, странно. Я уже года три иногда использую PostgreSQL, и SERIAL там был.
Проблема может быть еще в клиенте, которым пользуетесь. Некоторые клиенты с поддержкой множества СУБД поддерживают не весь синтаксис SQL.
Попробуйте написать запрос создания таблицы в psql. Если не прокатит, то можно автоинкремента достичь так:
Вы несколько не поняли. Оставляйте все также, никаких удалений дампов и загрузок, но добавьте еще и импорт. Просто добавьте одну строку.
Это нужно, чтобы у Вас появилось описание класса во втором модуле.
Если же я Вас неправильно понял или способ не работает, то вижу лишь один самый простой способ.
1. Сделать дополнительную переменную, которую сохранять и загружать в/из файла.
2. Модуль импортировать
3. Затем сделать Tester.N = загруженной из файла переменной.
На русском: Райан Митчелл. Скрапинг вебсайтов с помощью Python.
На английском: Dimitrios Kouzis-Loukas, Learning Scrapy.
Это из того, что попадалось на глаза.