从表中获取所有产品并对其进行迭代

科迪知道了

我正在编写一个使用Flask作为后端的网站,并且试图将表格中的所有产品添加到网页中。

我从来没有使用过SQLAlchemy或类似的工具,所以我不确定如何从数据库中准确地获取所有产品,然后根据网站的需要对它们进行分类。

这是我在views.py中使用的代码

@app.route('/products')
def products():
    product = [
        {
            'product_name': 'T-Shirts',
            'product_price': '18.00',
            'product_img': '',
            'product_description': 'A t-shirt.'
        },
        {
            'product_name': 'TShirts 2',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 3',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 4',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 5',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 6',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 7',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 8',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 9',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 10',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 11',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 12',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 13',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 14',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
        {
            'product_name': 'TShirts 15',
            'product_price': '25.00',
            'product_img': '',
            'product_description': 'A t-shirt, again.'
        },
    ]
    return render_template("products.html",
                           title="Products",
                           products = product)

这是我模板中的代码(可以正常工作):

{% extends "base.html" %}
{% block content %}
         <div class="row">
            <div class="large-4 small-12 columns">
                <img src="{{ url_for('static', filename='img/Straight_Up_Performance_Logo.png') }}">

                <div class="hide-for-small panel">
                    <h3>Straight Up Racing</h3>
                    <h5 class="subheader">Straight Up Racing believes that the best way to get in touch with our customers is for
                    them to call us. Give us a call at (406) 239-4975 to order yours today!
                    </h5>
                </div>
            </div>

            <div class="large-8 columns">
               <div class="row container1">
                   {% for product in products %}
                       <div class="large-4 small-4 columns">
                           <ul class="pricing-table">
                               {% if product.product_name %}<li class="title">{{ product.product_name }}</li>{% endif %}
                               {% if product.product_price %}<li class="price">${{ product.product_price }} + S&H</li>{% endif %}
                               {% if product.product_img %}<li class="bullet-item">{{ product.product_img }}</li>{% endif %}
                               {% if product.product_description %}<li class="description">{{ product.product_description }}</li>{% endif %}
                           </ul>
                       </div>
                   {% endfor %}
               </div>
            </div>
         </div>


{% endblock %}

这是创建Product表的代码:

class Product(db.Model):
    product_id = db.Column(db.Integer, primary_key=True)
    product_name = db.Column(db.String(64), index = True)
    product_price = db.Column(db.Float, index=True)
    product_img = db.Column(db.String(200), index=True)
    product_description = db.Column(db.String(1000), index=True)

    def __repr__(self):
        return '<Product %r>' % (self.product_name)

我的问题不是为什么它当前不从数据库中提取数据,我知道它使用的是我手动定义的内容。我不知道如何使用SQLAlchemy从数据库中将其提取?

脏衣服

如果要显示所有产品,则需要SQLAlchemy的all方法。

@app.route('/products')
def products():
    products = Product.query.all()
    return render_template("products.html",
                           title="Products",
                           products=products)

如果希望按某个字段进行过滤,则需要使用SQLAlchemy的filterfilter_by

products = Product.query.filter(Product.product_name == 'TShirts 11').all()

# or

products = Product.query.filter_by(product_name='TShirts 11').all()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Magento-获取当前类别中的所有产品

来自分类Dev

返回给定用户是否对左侧表中的所有产品和评分表中的结果进行评分

来自分类Dev

如何使用无形来迭代联产品中的所有产品类型?

来自分类Dev

从所有产品中获取 Woocommerce 中特定产品属性的术语名称数组

来自分类Dev

如何从当前的WooCommerce产品类别中获取所有产品?

来自分类Dev

GraphQL,Shopify获取所有产品或产品总数

来自分类Dev

DAX TREATAS通过另一个表进行过滤,以促销所有产品

来自分类Dev

在Wordpress中以自定义帖子类型获取类别的所有产品

来自分类Dev

HYBRIS Flexible Query从订单模型中获取所有产品

来自分类Dev

我如何从所有产品中获取制造商?

来自分类Dev

获取woocommerce类别的所有产品ID

来自分类Dev

嵌套的更容易加载的约束:从父类别中获取所有产品。在三个不同的表下定义类别

来自分类Dev

在所选主要类别的所有子类别中获取所有产品的最佳方法是什么?

来自分类Dev

对Magento中的所有产品享受折扣

来自分类Dev

我可以搜索搜索中的所有产品吗?

来自分类Dev

在magento主页中显示所有产品

来自分类Dev

如何从所有产品中仅删除组价?

来自分类Dev

显示Magento 2中的所有产品

来自分类Dev

在1行SQL Server中列出所有产品

来自分类Dev

如何在“信任平台”中列出所有产品?

来自分类Dev

使用Python中的BeautifulSoup完全加载所有产品

来自分类Dev

如何删除发票行中的所有产品清单?

来自分类Dev

如何从下拉列表中获取选定的选项并根据laravel中的基础货币转换所有产品价格

来自分类Dev

从非产品页面获取该类别中所有产品的制造商

来自分类Dev

(1.9)获取所有产品类别的ID(在产品页面上)

来自分类Dev

从亚马逊广告产品 API 获取所有产品图片

来自分类Dev

如何使用laravel 5.2获取所有类别的所有产品的计数(即多对多表中的所有记录)

来自分类Dev

如何使用laravel 5.2获取所有类别的所有产品的计数(即多对多表中的所有记录)

来自分类Dev

woocommerce所有产品尺寸的列表

Related 相关文章

  1. 1

    Magento-获取当前类别中的所有产品

  2. 2

    返回给定用户是否对左侧表中的所有产品和评分表中的结果进行评分

  3. 3

    如何使用无形来迭代联产品中的所有产品类型?

  4. 4

    从所有产品中获取 Woocommerce 中特定产品属性的术语名称数组

  5. 5

    如何从当前的WooCommerce产品类别中获取所有产品?

  6. 6

    GraphQL,Shopify获取所有产品或产品总数

  7. 7

    DAX TREATAS通过另一个表进行过滤,以促销所有产品

  8. 8

    在Wordpress中以自定义帖子类型获取类别的所有产品

  9. 9

    HYBRIS Flexible Query从订单模型中获取所有产品

  10. 10

    我如何从所有产品中获取制造商?

  11. 11

    获取woocommerce类别的所有产品ID

  12. 12

    嵌套的更容易加载的约束:从父类别中获取所有产品。在三个不同的表下定义类别

  13. 13

    在所选主要类别的所有子类别中获取所有产品的最佳方法是什么?

  14. 14

    对Magento中的所有产品享受折扣

  15. 15

    我可以搜索搜索中的所有产品吗?

  16. 16

    在magento主页中显示所有产品

  17. 17

    如何从所有产品中仅删除组价?

  18. 18

    显示Magento 2中的所有产品

  19. 19

    在1行SQL Server中列出所有产品

  20. 20

    如何在“信任平台”中列出所有产品?

  21. 21

    使用Python中的BeautifulSoup完全加载所有产品

  22. 22

    如何删除发票行中的所有产品清单?

  23. 23

    如何从下拉列表中获取选定的选项并根据laravel中的基础货币转换所有产品价格

  24. 24

    从非产品页面获取该类别中所有产品的制造商

  25. 25

    (1.9)获取所有产品类别的ID(在产品页面上)

  26. 26

    从亚马逊广告产品 API 获取所有产品图片

  27. 27

    如何使用laravel 5.2获取所有类别的所有产品的计数(即多对多表中的所有记录)

  28. 28

    如何使用laravel 5.2获取所有类别的所有产品的计数(即多对多表中的所有记录)

  29. 29

    woocommerce所有产品尺寸的列表

热门标签

归档