Корзина

Обсуждение документации второй версии фреймворка. Переводы Cookbook и авторские рецепты.
Ответить
nzxyelrt
Сообщения: 16
Зарегистрирован: 2014.11.18, 18:49

Корзина

Сообщение nzxyelrt »

Приветствую

Хочу сделать корзину с помощью данного модуля https://github.com/omnilight/yii2-shopping-cart
Добавил в модель

Код: Выделить всё

 use CartPositionTrait;

    public function getPrice()
    {
        return $this->product_cost;
    }

    public function getId()
    {
        return $this->product_id;
    } 
В контроллер

Код: Выделить всё

public function actionAddToCart($id)
    {
        $cart = new ShoppingCart();

        $model = Product::findOne($id);
        if ($model) {
            $cart->put($model, 1);
            return $this->redirect(['cart-view']);
        }
        throw new NotFoundHttpException();
    }
 
Но возникает вопрос. Как сделать добавление в корзину в виде?
В описании указана эта инструкция. но как ее прикрутить к виду?

Код: Выделить всё

\Yii::$app->cart->put($cartPosition, 1); 
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Корзина

Сообщение lynicidn »

объявить компонент в конфиге

Код: Выделить всё

    'components' => [
        'cart' => ['class' => 'ShoppingCart']
    ]
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Корзина

Сообщение zelenin »

удивительно. Читаю ридми, там написан первый кусок кода, приведенный в посте, второй кусок кода, кусок кода, который отвественен за добавление компонента в yii и третий кусок кода.
Неужели вопрос в том, почему автор не может нормально прочесть ридми?
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Корзина

Сообщение lynicidn »

zelenin писал(а):Неужели вопрос в том, почему автор не может нормально прочесть ридми?
<a> неадекватен_______<б> не знает английский
<в> не нашел ридми____<г> мертв
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Корзина

Сообщение lynicidn »

@Zelenin: `третий кусок кода.` надо заменить на четвертый, сам посчитай %)
zelenin писал(а):там написан первый кусок кода, приведенный в посте, второй кусок кода, кусок кода, который отвественен за добавление компонента в yii и третий кусок кода.
пысы. шуткую я конечно - без обид ;)
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Корзина

Сообщение samdark »

lynicidn, хватит зафлуживать все темы. Конструктивней!
omnilight
Сообщения: 4
Зарегистрирован: 2014.09.19, 21:59
Контактная информация:

Re: Корзина

Сообщение omnilight »

Но возникает вопрос. Как сделать добавление в корзину в виде?
В вашем собственном сообщении содержится ответ: добавить в контроллер метод

Код: Выделить всё

public function actionAddToCart($id)
    {
        $cart = new ShoppingCart();

        $model = Product::findOne($id);
        if ($model) {
            $cart->put($model, 1);
            return $this->redirect(['cart-view']);
        }
        throw new NotFoundHttpException();
    }
А в виде написать:

Код: Выделить всё

<?= Url::to(['cart/add-to-cart', 'id' => $product->id]); ?>
Понятно, что реальном коде будет скорее всего не просто ссылка, а форма, где пользователь сможет также выбрать количество добавляемого товара.
Аватара пользователя
Insolita
Сообщения: 788
Зарегистрирован: 2011.06.06, 01:39
Контактная информация:

Re: Корзина

Сообщение Insolita »

н-да...
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Корзина

Сообщение lynicidn »

проверяли настройки скрипта видимо - большк всего тут :)
Аватара пользователя
Roksalana
Сообщения: 215
Зарегистрирован: 2014.01.14, 09:34

Re: Корзина

Сообщение Roksalana »

Я переписывала под вторую ветку компонент корзины из yiiext Код с примерами на гитхабе. Примеры на русском. Может с ним вам будет легче разобраться, а я получу фитбек ;)
Аватара пользователя
anton44eg
Сообщения: 2716
Зарегистрирован: 2012.01.25, 13:37
Откуда: Киев

Re: Корзина

Сообщение anton44eg »

Roksalana писал(а):Я переписывала под вторую ветку компонент корзины из yiiext Код с примерами на гитхабе. Примеры на русском. Может с ним вам будет легче разобраться, а я получу фитбек ;)
Во второй ветке не принято использовать приставки имен классов
nzxyelrt
Сообщения: 16
Зарегистрирован: 2014.11.18, 18:49

Re: Корзина

Сообщение nzxyelrt »

В контроллере

Код: Выделить всё

 public function actionAddToCart($id)
    {
        $cart = new ShoppingCart();

        $model = Product::findOne($id);
        if ($model) {
            $cart->put($model, 1);
            return $this->redirect(['addtocart']);
        }
        throw new NotFoundHttpException();
    } 
В модели

Код: Выделить всё

 use CartPositionTrait;

    public function getPrice()
    {
        return $this->product_cost;
    }

    public function getId()
    {
        return $this->product_id;
    } 
Вид

Код: Выделить всё

 <a href="<?php echo Url::to(['product/addtocart','id'=>$model->product_id]); ?>">добавляем </a>
Но 404


Not Found (#404)
Unable to resolve the request: product/addtocart

:?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Корзина

Сообщение zelenin »

addToCart
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Корзина

Сообщение lynicidn »

add-to-cart
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Корзина

Сообщение zelenin »

lynicidn писал(а):add-to-cart
ой, ну да )
Ответить