web2py は初めてで、データベースから表示するハイパーリンクを取得する方法を知りたいです。forループを使用して「製品」データベースからすべてのアイテムを生成し、各製品の名前とコストをリストする関数を持つページがあります。しかし、各製品の名前をハイパーリンクにして、アイテム自体のすべての情報 (説明、重量、実際のコスト) を表示したいと思います...何時間も頭を悩ませてきましたが、これがどのようなものかどこにも見つかりません可能...どんな助けでもいただければ幸いです。
質問する
179 次
1 に答える
0
コントローラーの名前が であると仮定すると、コントローラーproducts.py
には次のようなものがあります。
def index():
products = db(db.product).select()
return dict(products=products)
def view():
product_id = request.args(0, cast=int, otherwise=lambda: None)
product = db(db.product.id == product_id).select().first()
if product is None:
raise HTTP(404, 'Cannot find that product')
return dict(product=product)
products/index.html ビューには、次のようなコードがあります。
<ul class="products">
{{for product in products:}}
<li>{{=A(product.name,
_href=URL('products','view', args=[product.id]))}}
</li>
{{pass}}
</ul>
やりたいことによっては、これを実現する別の方法であるSQLFORM.gridを確認することもできます。
于 2013-10-03T21:01:05.523 に答える