В прямой Django, вы можете получить доступ случайных экземпляров модели по:Вернуться Случайные товары с Django и Tastypie
randinst = MyModel.objects.order_by('?')
Примечание: Хотя есть проблемы с производительностью этого, я испытал с SQLite бэкэнда и я получить действительно случайные результаты для до 100000 попыток. Поскольку мое приложение не требует значительных результатов, я не беспокоюсь о других бэкэндах.
То, что я хочу, чтобы выполнить это: Клиент делает запрос, /api/v1/mymodel/?limit=10
, и получает случайный набор из десяти строк из MyModel через tastypie так же, как вы получите работает во фрагменте кода выше в 10 раз. Затем он делает тот же запрос и получает 10 различных (в пределах вероятности) случайных строк.
Примечание: Я пробовал запросить /api/v1/mymodel/?ordering='?'
и все возможные варианты его использования бесполезны. Также бесполезно установить MyModelResource.Meta.ordering = ['?']
Есть ли способ выполнить мою цель с помощью tastypie? Существуют ли другие решения? Благодарю.