在 web2py 的同一函数中选择随机记录而不是随机记录

Selecting random records and not rendom records in same function in web2py

我像这样从数据库中选择随机记录:

def index():
    rows = db().select(db.test.ALL, limitby=(0, 5), orderby='<random>')
    return locals()

在视图中:

{{extend 'layout.html'}}
{{for row in rows:}}
{{=LI(A(row.things, _href=URL("other", args=row.id)))}}
{{pass}}

我想从 things 添加并显示一条记录到此列表,该记录不是随机选择的。我该怎么做?

您可以执行单独的查询以生成另一个 Rows 对象,然后 combine them:

rows = (db().select(db.test.ALL, limitby=(0, 5), orderby='<random>') |
        db(db.test.id == some_id).select())

如果您希望非随机记录排在第一位而不是最后一位,只需颠倒顺序即可。