如何在 Flask a For In Loop 中编码,遍历列表以创建新的页面链接?

How to code in Flask a For In Loop iterating through lists to create new page links?

提问人:evacoder 提问时间:1/2/2021 最后编辑:evacoder 更新时间:1/2/2021 访问量:753

问:

学习 Flask,我被困在尝试创建一个 for 循环来迭代汽车列表中的每个元素。我需要将其连接到html,以便如果我导航到<car_type>的每个页面,我可以看到汽车列表及其功能。这可能真的很简单,但不知何故,我似乎无法让它工作。

我希望它看起来像这样; 如果我转到取件页面链接<.../cars/pickups> 皮卡清单

  • 颜色:绿色
  • 里程数: 23000
  • 颜色:银色
  • 里程数: 40000

如果我转到轿车页面链接<.../cars/sedans> 轿车列表

  • 颜色:黑色
  • 里程数: 10000
from flask import Flask
app = Flask(__name__)
from dict import cars

@app.route('/')
def index():
  return f'''
  <h1>Buy a Car!</h1>
  <p>Browse through the links below to find your new mean machine:</p>
  <ul>
  <li>Pickups</li>
  <li>Sedans</li>
  <li>Trucks</li>
  </ul>
  '''

@app.route('/cars/<car_type>')
def car_list(car_type):
  html = f'<h1>List of {car_type}</h1>'
  for car_type in cars.keys():
    html += cars[Pickups], cars[Sedans],cars[Trucks]
  return html  
    

以下是不同 python 文件(dict.py) 中的字典代码:

cars = {
    'Pickups': [
        {
            'color': 'green',
            'mileage': 23000,
        },
        {
            'color': 'silver',
            'mileage': 40000,
             }
    ],
    'Sedans': [
        {
            'color': 'black',
            'mileage': 10000,
        }
    ],
    'Trucks': [
        {
            'colors': 'sky blue',
            'mileage': 43000,
        }
    ]
}
Python HTML 烧瓶 嵌套列表

评论

0赞 Isaac Rivera 1/2/2021
你能举例说明预期的结果或你想实现的目标吗?
1赞 IoaTzimas 1/2/2021
你的应用需要从头开始构建。很多错误。您必须在 html 文件中创建一个 jinja 循环才能获得所需的内容。看这里 : stackoverflow.com/questions/29706099/...此外,在您的汽车路线中,<li> 标签必须包含指向汽车/类型的链接(<a> 标签)。

答:

0赞 Jolbas 1/2/2021 #1

这是列出一种类型的汽车的代码。

@app.route('/cars/<car_type>')
def list_car_type(car_type):
    html = f'<h1>List of {car_type}</h1><ul>'
    for car in cars[car_type]:
        for key, value in car:
            html += f'<li>{key.capitalize()}: {value}</li>
    html += '</ul>'
    return html