Что держит CART_SESSION_ID? - PullRequest
       0

Что держит CART_SESSION_ID?

0 голосов
/ 24 февраля 2020

Я следую Django примером книги. В файле settings.py

CART_SESSION_ID = 'cart'

в файле cart.py в приложении корзина

class Cart(object):
    def __init__(self, request):
    """
    Initialize the cart.
    """
    self.session = request.session
    cart = self.session.get(settings.CART_SESSION_ID)
    if not cart:
        # save an empty cart in the session
        cart = self.session[settings.CART_SESSION_ID] = {}
        self.cart = cart```

, если это строка, тогда, если не cart: блок никогда не будет выполнен. я не понимаю, как здесь работает CART_SESSION_ID?

1 Ответ

1 голос
/ 24 февраля 2020

cart - это результат получения значения CARD_SESSION_ID из сеанса dict, а не settings.CARD_SESSION_ID.

setting.CARD_SESSION_ID - это просто ключ, используемый для нахождения значения в диктанте session , Итак, код мог бы быть написан так:

self.session = request.session
cart = self.session.get('cart')
if not cart:
    # save an empty cart in the session
    cart = self.session['cart'] = {}
    self.cart = cart``

(Конечно, вы должны использовать код из документации, так как он более согласованный)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...