Peewee: получение случайных записей с определенным начальным числом

документация объясняет, как получить случайную запись из таблицы:

Table.select().order_by(fn.Random())

однако я хочу воспроизвести результат для серии тестов.

Я проверил, что в SQL существует функция setseed, но она не работает, если я использую ее так:

Table.select(fn.setseed(1)).order_by(fn.Random())

возвращая ошибку:

peewee.OperationalError: нет такой функции: setseed

Дополнительным обходным путем может быть использование собственного случайного модуля Python и выбор случайного идентификатора таблицы. Тем не менее, интересно, можно ли установить семя.

Я использую Python 2.7, Peewee 2.10 и SQLite.


person Bub Espinja    schedule 08.05.2018    source источник


Ответы (1)


SQLite не имеет функции SETSEED или чего-то подобного:

https://www.sqlite.org/lang_corefunc.html

person coleifer    schedule 08.05.2018