commerce - один товар в нескольких дисплеях (или продажа фотопринтов)

Главные вкладки

Аватар пользователя noneart noneart 3 октября 2013 в 1:39

хочу узнать, в правильном направлении я двигаюсь или нет.
альбом с фотографиями. клиент выделяет фотографии и они добавляются в корзину.

фотографии - ноды (product display). каждая такая нода связанна с одним единственным в системе продуктом - SKU=PHOTOPRINT

проблема в том, что в таком случае карта наполняется списком, каждый элемент которого это один и тот же продукт - PHOTOPRINT.
идея с одним продуктом в системе мне нравится. не вижу смысла создавать отдельный продукт для каждой фотографии

но тогда вопрос.. а как мне различать эти продукты в карте и далее по всему процессу? то есть, наверное что-то с line items как-то надо подшаманить?

в общем мне нужно как-то связывать товар в корзине с нодой из которой этот товар заказали.

Комментарии

Аватар пользователя aa2007 aa2007 3 октября 2013 в 19:08

грубо говоря корзина и далле данные заказ этот views. устанавливаете в соотв. вьюхах отношение с дисплеем и получаете заголовки нод.

Аватар пользователя Slayer Slayer 3 октября 2013 в 19:34

у вас все равно каждое фото как нода, так не проще сделать тип материала продукт и добалять уже продукты, в дальнейшем если решите продавать к примеру в разном качестве фотки или добавить поля автора и пр. будет проще и проблема с корзиной снимется, да и статистика для себя сможете смотреть какие фото чаще покупают.

Аватар пользователя noneart noneart 7 октября 2013 в 21:41

"Slayer" wrote:
так не проще сделать тип материала продукт и добалять уже продукты

с удовольствием бы понял что Вы имеете в виду, но к сожалению пока не догоняю. в общем-то у меня так наверное и сделано.. фото - такой тип материала. каждая такая нода связанна с единственным продуктом - фотопринт.

в общем я решил свою проблему (на данный момент) добавлением поля типа node reference к line item. и тогда, при добавлении товара в корзину, всего то и надо что заполнить это поле (разумеется автоматически). проблема решилась дописанием всего одной строчки кода, что в общем я считаю простым решением.

однако я обнаружил такую штуку. если залезть в таблицу в базе данных commerce_line_item, там можно обнаружить что каждая запись этой таблицы содержит данные о дисплее. то есть о ноде из которой собственно товар и был куплен. но информация там представлена в виде похожем на json, что наверное и ограничевает views в гибкости её использования.

но в общем, как я уже заметил, задача решается достаточно просто. друпал рулит Smile