Djangoroidの奮闘記

python,django,angularJS1~三十路過ぎたプログラマーの奮闘記

Django e-commerce part42 Add to Cart from Product View

Product Viewから、Cartにitemを追加する

product_detail.html にコードを追記する。

  • タグを追加、method=GET, action='{% url "cart"%}' で、carts/view.html に送付する。

  • タグ、ボタンを追加

    <form method='GET' action="{% url 'cart' %}">
    <select class='form-control variation_select'>
    {% for vari_obj in object.variation_set.all %}
    <!-- <option data-img="https://dlmarket-jp.s3.amazonaws.com/images/consignors/21/2170/umi_hawai_back.jpg" data-price="{{ vari_obj.price }}" value="{{ vari_obj.id }}">{{ vari_obj }}</option> -->
    <option name='item' data-sale-price="{{ vari_obj.sale_price}}" data-price="{{ vari_obj.price }}" value="{{ vari_obj.id }}">{{ vari_obj }}</option>
    {% endfor %}

    </select>

    {% else %}
    <h3 id='price'>
    {% if object.variation_set.first.sale_price %}
    {{ object.variation_set.first.sale_price }}
    <small class='og-price'>{{ object.variation_set.first.price }}</small>
    {% else %}
    {{ object.variation_set.first.price }}
    {% endif %}
    </h3>



    {% endif %}
    <br/>
    <input type='submit' value='カートに入れる' class='btn btn-default'/>
    </form>

これを追記した上で、カートに入れるボタンを押すと、ブラウザには、http://127.0.0.1:8000/cart/? と表記される。

そのため、ちょっと修正する。

    <select name='item' class='form-control variation_select'>

name = 'item'は、select タブに入れる。

上記のコードの解説