2016-10-05から1日間の記事一覧
カートの数量をカートの中で更新できるようにする。 carts/view.htmlを修正 {% extends "base.html" %} {% block content %} <table class='table'> {% for item in object.cartitem_set.all %} <tr> <form action="." method="GET"> <td>{{ item.item.get_title }}</td> # 以下のパラメータは、hiddenにして表示はしないが、r</form></tr></table>…
Cart VIewの編集と、Itemの削除 carts/view.html の追記 削除ボタンをつける。 {% extends "base.html" %} {% block content %} {{ object }} {{ object.cartitem_set.all }} <table class='table'> {% for item in object.cartitem_set.all %} <tr> <td>{{ item }}</td> <td>{{ item.quantity }}</td> <td>{</td></tr></table>…
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 %} </select></form>
CartViewをrenderする SingleObjectMixin をimportする 公式ドキュメント: Single object mixins | Django documentation | Django Provides a mechanism for looking up an object associated with the current HTTP request. つまり、サイトを開いている…
Djangoのセッションの利用方法 公式ドキュメント: セッションの使いかた | Django documentation | Django carts/views.py を編集する。 class CartView(View): cart_id = request.session.get("cart_id") if cart_id == None: cart = Cart() cart.save() c…
Add, Remove, Update のCart機能をつけていく carts/views.py のコードを書いていく from django.views.generic import View from django.http import HttpResponseRedirect from django.shortcuts import render # Create your views here. class CartView(…
python shellを使って manytomany through を確認してみる $ python manage.py shell >>> from products.models import Variation >>> from carts.models import Cart, CartItem >>> >>> Variation.objects.all() [<Variation: 16GB>, <Variation: 32GB>, <Variation: cs>, <Variation: cs6>, <Variation: Default>, </variation:></variation:></variation:></variation:></variation:>
多対多フィールドのthroughを使って見る carts/admin.py にcartを追加していく from django.contrib import admin # Register your models here. from .models import Cart, CartItem class CartItemInline(admin.TabularInline): model = CartItem class Ca…
Cart アプリの作成 carts appを作成する python manage.py startapp carts carts/models.py にコードを書いていく はじめに、ざっくりしたアウトラインを書いておくと便利。 class Cart(models.Model): # user # items # timestamp ** created # updated ** …
Admin Inlineで、Productを編集する 公式ドキュメントはこちら adminに新しいclassを設定する。 products/admin.py class ProductAdmin(admin.ModelAdmin): list_display = ['__str__','price'] class Meta: model = Product admin.site.register(Product, P…