hello,
on both cart block/cart checkout/cart form views,
when i'm trying to add an existing product type field on that view following :
- add relationship with product id to that view,
- add product field: image or product field: size or something else to that view too
in order to add an image field (for thumbnail) before the title on the line item,
or size of t-shirt or any added field to the product type.
i've got the following error when watching the cart view :
'Exception: SQLSTATE[42S22]: Column not found: 1054 Unknown column \'commerce_line_item_field_data_commerce_line_items__field_data_commerce_product.commerce_product\' in \'on clause\''
in views_plugin_query_default->execute() (line 1356 of /var/www/localhost/dc/sites/all/modules/views/plugins/views_plugin_query_default.inc).
| Comment | File | Size | Author |
|---|---|---|---|
| #7 | view_relationships.jpg | 50.15 KB | aem34 |
Comments
Comment #1
aem34 commentedexcuse me, i forgot :
for the installation : InnoDB tables,
drupal commerce 7.x-1.x-dev from 2011-Apr-02
ctools 7.x-1.x-dev from 2011-Mar-27
entity 7.x-1.x-dev from 2011-Mar-22
rules 7.x-2.0-beta1 from 2011-Mar-23
views 7.x-3.x-dev from 2011-Apr-03
i tried to do what is written at the following page :
http://www.drupalcommerce.org/node/387#comment-854
Comment #2
bojanz commentedI'll try and reproduce.
Comment #3
bojanz commentedI can't reproduce this. Added a relationship, added the image, no error.
Please attach the exported view (from the views list select Export for your view, and attach it here), and I'll take a look.
Comment #4
aem34 commentedhere it its, thanks
$view = new view;
$view->name = 'commerce_cart_summary';
$view->description = 'Cart line item summary displayed during checkout.';
$view->tag = 'commerce';
$view->base_table = 'commerce_order';
$view->human_name = 'Shopping cart summary';
$view->core = 0;
$view->api_version = '3.0-alpha1';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Defaults */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->display->display_options['title'] = 'Shopping cart';
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['style_plugin'] = 'table';
$handler->display->display_options['style_options']['columns'] = array(
'line_item_title' => 'line_item_title',
'commerce_unit_price' => 'commerce_unit_price',
'quantity' => 'quantity',
'commerce_total' => 'commerce_total',
);
$handler->display->display_options['style_options']['default'] = '-1';
$handler->display->display_options['style_options']['info'] = array(
'line_item_title' => array(
'align' => '',
'separator' => '',
),
'commerce_unit_price' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
),
'quantity' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
),
'commerce_total' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => 'views-align-right',
'separator' => '',
),
);
$handler->display->display_options['style_options']['override'] = 1;
$handler->display->display_options['style_options']['sticky'] = 0;
/* Footer: Commerce Order: Order total */
$handler->display->display_options['footer']['order_total']['id'] = 'order_total';
$handler->display->display_options['footer']['order_total']['table'] = 'commerce_order';
$handler->display->display_options['footer']['order_total']['field'] = 'order_total';
$handler->display->display_options['footer']['order_total']['empty'] = FALSE;
/* Relationship: Order: Referenced line item */
$handler->display->display_options['relationships']['commerce_line_items_line_item_id']['id'] =
'commerce_line_items_line_item_id';
$handler->display->display_options['relationships']['commerce_line_items_line_item_id']['table'] =
'field_data_commerce_line_items';
$handler->display->display_options['relationships']['commerce_line_items_line_item_id']['field'] =
'commerce_line_items_line_item_id';
$handler->display->display_options['relationships']['commerce_line_items_line_item_id']['required'] = 1;
/* Relationship: Line item: Referenced product */
$handler->display->display_options['relationships']['commerce_product']['id'] = 'commerce_product';
$handler->display->display_options['relationships']['commerce_product']['table'] = 'field_data_commerce_product';
$handler->display->display_options['relationships']['commerce_product']['field'] = 'commerce_product';
$handler->display->display_options['relationships']['commerce_product']['relationship'] =
'commerce_line_items_line_item_id';
$handler->display->display_options['relationships']['commerce_product']['required'] = 0;
/* Field: Commerce Line Item: Title */
$handler->display->display_options['fields']['line_item_title']['id'] = 'line_item_title';
$handler->display->display_options['fields']['line_item_title']['table'] = 'commerce_line_item';
$handler->display->display_options['fields']['line_item_title']['field'] = 'line_item_title';
$handler->display->display_options['fields']['line_item_title']['relationship'] =
'commerce_line_items_line_item_id';
$handler->display->display_options['fields']['line_item_title']['label'] = 'Product';
$handler->display->display_options['fields']['line_item_title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['external'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['line_item_title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['line_item_title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['line_item_title']['alter']['html'] = 0;
$handler->display->display_options['fields']['line_item_title']['element_label_colon'] = 1;
$handler->display->display_options['fields']['line_item_title']['element_default_classes'] = 1;
$handler->display->display_options['fields']['line_item_title']['hide_empty'] = 0;
$handler->display->display_options['fields']['line_item_title']['empty_zero'] = 0;
/* Field: Line item: Unit price */
$handler->display->display_options['fields']['commerce_unit_price']['id'] = 'commerce_unit_price';
$handler->display->display_options['fields']['commerce_unit_price']['table'] = 'field_data_commerce_unit_price';
$handler->display->display_options['fields']['commerce_unit_price']['field'] = 'commerce_unit_price';
$handler->display->display_options['fields']['commerce_unit_price']['relationship'] =
'commerce_line_items_line_item_id';
$handler->display->display_options['fields']['commerce_unit_price']['label'] = 'Price';
$handler->display->display_options['fields']['commerce_unit_price']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['external'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['trim'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['alter']['html'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['element_class'] = 'price';
$handler->display->display_options['fields']['commerce_unit_price']['element_label_colon'] = 1;
$handler->display->display_options['fields']['commerce_unit_price']['element_default_classes'] = 1;
$handler->display->display_options['fields']['commerce_unit_price']['hide_empty'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['empty_zero'] = 0;
$handler->display->display_options['fields']['commerce_unit_price']['click_sort_column'] = 'amount';
$handler->display->display_options['fields']['commerce_unit_price']['type'] = 'commerce_price_formatted_amount';
$handler->display->display_options['fields']['commerce_unit_price']['settings'] = array(
'calculation' => FALSE,
);
$handler->display->display_options['fields']['commerce_unit_price']['field_api_classes'] = 0;
/* Field: Commerce Line Item: Quantity */
$handler->display->display_options['fields']['quantity']['id'] = 'quantity';
$handler->display->display_options['fields']['quantity']['table'] = 'commerce_line_item';
$handler->display->display_options['fields']['quantity']['field'] = 'quantity';
$handler->display->display_options['fields']['quantity']['relationship'] = 'commerce_line_items_line_item_id';
$handler->display->display_options['fields']['quantity']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['external'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['trim'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['quantity']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['quantity']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['quantity']['alter']['html'] = 0;
$handler->display->display_options['fields']['quantity']['element_label_colon'] = 1;
$handler->display->display_options['fields']['quantity']['element_default_classes'] = 1;
$handler->display->display_options['fields']['quantity']['hide_empty'] = 0;
$handler->display->display_options['fields']['quantity']['empty_zero'] = 0;
$handler->display->display_options['fields']['quantity']['set_precision'] = 0;
$handler->display->display_options['fields']['quantity']['precision'] = '0';
$handler->display->display_options['fields']['quantity']['format_plural'] = 0;
/* Field: Line item: Total */
$handler->display->display_options['fields']['commerce_total']['id'] = 'commerce_total';
$handler->display->display_options['fields']['commerce_total']['table'] = 'field_data_commerce_total';
$handler->display->display_options['fields']['commerce_total']['field'] = 'commerce_total';
$handler->display->display_options['fields']['commerce_total']['relationship'] =
'commerce_line_items_line_item_id';
$handler->display->display_options['fields']['commerce_total']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['external'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['trim'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['commerce_total']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['commerce_total']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['commerce_total']['alter']['html'] = 0;
$handler->display->display_options['fields']['commerce_total']['element_class'] = 'price';
$handler->display->display_options['fields']['commerce_total']['element_label_colon'] = 1;
$handler->display->display_options['fields']['commerce_total']['element_default_classes'] = 1;
$handler->display->display_options['fields']['commerce_total']['hide_empty'] = 0;
$handler->display->display_options['fields']['commerce_total']['empty_zero'] = 0;
$handler->display->display_options['fields']['commerce_total']['click_sort_column'] = 'amount';
$handler->display->display_options['fields']['commerce_total']['type'] = 'commerce_price_formatted_amount';
$handler->display->display_options['fields']['commerce_total']['settings'] = array(
'calculation' => FALSE,
);
$handler->display->display_options['fields']['commerce_total']['field_api_classes'] = 0;
/* Field: Fields: Image */
$handler->display->display_options['fields']['field_image']['id'] = 'field_image';
$handler->display->display_options['fields']['field_image']['table'] = 'field_data_field_image';
$handler->display->display_options['fields']['field_image']['field'] = 'field_image';
$handler->display->display_options['fields']['field_image']['relationship'] = 'commerce_product';
$handler->display->display_options['fields']['field_image']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_image']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_image']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_image']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_image']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_image']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_image']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_image']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_image']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_image']['settings'] = array(
'image_style' => 'thumbnail',
'image_link' => 'content',
);
$handler->display->display_options['fields']['field_image']['field_api_classes'] = 0;
/* Sort criterion: Commerce Line Item: Line item ID */
$handler->display->display_options['sorts']['line_item_id']['id'] = 'line_item_id';
$handler->display->display_options['sorts']['line_item_id']['table'] = 'commerce_line_item';
$handler->display->display_options['sorts']['line_item_id']['field'] = 'line_item_id';
$handler->display->display_options['sorts']['line_item_id']['relationship'] = 'commerce_line_items_line_item_id';
/* Contextual filter: Commerce Order: Order ID */
$handler->display->display_options['arguments']['order_id']['id'] = 'order_id';
$handler->display->display_options['arguments']['order_id']['table'] = 'commerce_order';
$handler->display->display_options['arguments']['order_id']['field'] = 'order_id';
$handler->display->display_options['arguments']['order_id']['default_action'] = 'not found';
$handler->display->display_options['arguments']['order_id']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['order_id']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['order_id']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['order_id']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['order_id']['break_phrase'] = 0;
$handler->display->display_options['arguments']['order_id']['not'] = 0;
/* Filter criterion: Commerce Line Item: Type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'commerce_line_item';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['relationship'] = 'commerce_line_items_line_item_id';
$handler->display->display_options['filters']['type']['value'] = array(
'product' => 'product',
);
$translatables['commerce_cart_summary'] = array(
t('Defaults'),
t('Shopping cart'),
t('more'),
t('Apply'),
t('Reset'),
t('Sort by'),
t('Asc'),
t('Desc'),
t('Line Item'),
t('Product'),
t('Price'),
t('Quantity'),
t('.'),
t(','),
t('Total'),
t('Image'),
t('All'),
);
Comment #5
aem34 commentedComment #6
aem34 commentedhere it is :
default view "checkout"
just added a relationship with the product
and a field "image" from the fields of the product
as told before
Comment #7
aem34 commentedok i think i'm onto something...
when doing the relationship with "Line item: Referenced product"
i saw that there are 2 "Line item: Referenced product"
please find attached the corresponding screenshot of possible relationships
in the cart view (file "view_relationships.jpg")
when adding the relationship with the first line "Line item: Referenced product"
then adding a field, like "image" the error pops up in the view;
when adding the relationship with the second line "Line item: Referenced product"
then adding a field, like "image" the view is absolutely fine and the image,
static or colorbox is perfect...
you can see in the screenshot that there are other possible relationships in double
that could lead to trouble like this...
all my tests where on different "dev" versions of views & commerce
but this relationships screen is absolutely the same whatever the versions :
certain relationships are in double...
please is this a known bug or do you want some more information (like with the coder module enabled, and so on) ?
Comment #8
aem34 commentedclosed because discussed here :
#1131192 : Views relationships are duplicated; update all; add tests
thanks :)