Форум сайта python.su
Есть ситуация, на удаленном сервере есть приложение в качестве базы данных стоит монга, удаленно подключаемся к порту монги и работаем с базой удаленно. Просблема вот в чем, скрипт достает из колекции монги по порядку секции
def find_main_all(self): return list(self.collection.find({'type': {"$in": [ 'section', 'chapter', 'general_notes_index', 'section_notes' ]}}))
Офлайн
Jeck290В базе данных, по-моему, нет порядка между строками (записями). Если ты на это полагаешься, это неправильно. (Надо иметь поле, определяющее порядок записи.)
документы в выборке идут не попорядку
Отредактировано py.user.next (Июль 30, 2015 00:39:48)
Офлайн
Нет нет , в базе все идет по порялку в нужной структуру, на локалке же все работает
section
chapter
chapter
chapter
chapter
chapter
section
chapter
chapter
chapter
chapter
chapter
chapter
chapter
chapter
chapter
section
chapter
section
chapter
тоесть если берешь строку 1 то тогда нужно брать и работать со строками 2 без этого скрипт даже не начнет работу так как создает структуру и списков. Пробовал сортировку выставлять но тогда пропадает нужный порядок (((
Если пишу маленький скрипт для теста и запускаю его на сервере то структура выдачи не меняется ! а если пишешь выборку класом то порядок изменяется
сделал отдельную функцию, поместил ее в отдельный файл, возвращаю список. Импортировал все в главный скрипт, все работает как нужно, если переношу функцию из файла в главный файл и убираю импорты то все так же начинает неработать (((( что за дело не пойму, код же работает.
Отредактировано Jeck290 (Июль 30, 2015 08:10:39)
Офлайн
Jeck290Вот про то и речь, что записи в базе идут в произвольном порядке. А упорядочивание записей делается по полю (числовому, например).
Нет нет , в базе все идет по порялку в нужной структуру
Jeck290Потому что он выбирает оптимально, в зависимости от того, как хранятся записи. А порядок он не соблюдает, потому что его нет.
Если пишу маленький скрипт для теста и запускаю его на сервере то структура выдачи не меняется ! а если пишешь выборку класом то порядок изменяется
Отредактировано py.user.next (Июль 30, 2015 08:22:21)
Офлайн