gelöst: Organic Groups / Panels: Duplikate (nur) im View-Pane
![](https://www.drupalcenter.de/files/imagecache/upic_mini/pictures/picture-5352.png)
am 22.09.2009 - 08:11 Uhr in
Hallo,
ich habe eben einen eigentümlichen Effekt festgestellt, den ich nicht verstehe.
Ich habe eine Sportvereins-Seite, bei der die Abteilungen mit Organic-Groups abgebildet werden.
Die Abteilungsseiten habe ich mit Panels gebaut, bestehend aus drei Panes: Selbstdarstellung / aktuelle Artikel / Termine in Kürze. Die Panel-Views besitzen jeweils einen "Mehr-Link" zur Seitendarstellung des Views. So weit so gut.
Nun habe ich festgestellt, dass sämtliche Einträge im View-Pane doppelt dargestellt werden. Auf der Seite erscheinen sie wunschgemäß nur einmal. Ich habe beobachtet, daß dieser Effekt von der Rolle abhängt
- User/1 bekommt die Einträge auch im View-Pane nur ein einziges Mal dargestellt
- angemeldete User und Gäste sehen die Einträge doppelt
- Der Autor bzw. OG-Gruppen-Admin sieht die Einträge dreifach
Hier muss also der Schlüssel zur Lösung liegen - ich sehe aber nicht, wo Duplikate in Abfrage entstehen könnten.
Ich verwende keine OG-Subgroups. Als Anzeige-Filter verwende ich ich "Veröffentlicht oder Verwalter"
Als Workaround habe ich die View-Pane Darstellung mit Eindeutigkeit übersteuert. Dies halte ich aber für keine Lösung, da Select Distinct Views unnötig Performance verbrauchen und ich denke, dass ich im View etwas übersehen habe. Ich verstehe aber nicht, warum dieser Effekt dann nicht auch auf den Seitendarstellungen auftritt. Abgesehen von der Eindeutigkeit habe ich keine Einstellungen im View-Pane übersteuert...
Hat jemand eine Idee?
Für alle Fälle poste ich den View-Code hier mal mit:
$view = new view;
$view->name = 'Artikel';
$view->description = 'Artikel';
$view->tag = 'Panels';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Standards', 'default');
$handler->override_option('fields', array(
'field_date_value' => array(
'label' => '',
'alter' => array(
'alter_text' => 0,
'text' => '',
'make_link' => 0,
'path' => '',
'link_class' => '',
'alt' => '',
'prefix' => '',
'suffix' => '',
'help' => '',
'trim' => 0,
'max_length' => '',
'word_boundary' => 1,
'ellipsis' => 1,
'strip_tags' => 0,
'html' => 0,
),
'link_to_node' => 0,
'label_type' => 'none',
'format' => 'short',
'multiple' => array(
'multiple_number' => '',
'multiple_from' => '',
'multiple_to' => '',
'group' => TRUE,
),
'repeat' => array(
'show_repeat_rule' => '',
),
'fromto' => array(
'fromto' => 'both',
),
'exclude' => 0,
'id' => 'field_date_value',
'table' => 'node_data_field_date',
'field' => 'field_date_value',
'override' => array(
'button' => 'Übersteuern',
),
'relationship' => 'none',
),
'title' => array(
'label' => '',
'alter' => array(
'alter_text' => 0,
'text' => '',
'make_link' => 0,
'path' => '',
'alt' => '',
'prefix' => '',
'suffix' => '',
'help' => '',
'trim' => 0,
'max_length' => '',
'word_boundary' => 1,
'ellipsis' => 1,
'html' => 0,
),
'link_to_node' => 1,
'exclude' => 0,
'id' => 'title',
'table' => 'node',
'field' => 'title',
'override' => array(
'button' => 'Übersteuern',
),
'relationship' => 'none',
),
));
$handler->override_option('sorts', array(
'created' => array(
'order' => 'DESC',
'granularity' => 'second',
'id' => 'created',
'table' => 'node',
'field' => 'created',
'override' => array(
'button' => 'Übersteuern',
),
'relationship' => 'none',
),
));
$handler->override_option('arguments', array(
'group_nid' => array(
'default_action' => 'empty',
'style_plugin' => 'default_summary',
'style_options' => array(),
'wildcard' => 'all',
'wildcard_substitution' => 'Alle',
'title' => 'Aktuelle Artikel',
'breadcrumb' => '',
'default_argument_type' => 'fixed',
'default_argument' => '',
'validate_type' => 'none',
'validate_fail' => 'not found',
'break_phrase' => 0,
'not' => 0,
'id' => 'group_nid',
'table' => 'og_ancestry',
'field' => 'group_nid',
'validate_user_argument_type' => 'uid',
'validate_user_roles' => array(
'2' => 0,
'3' => 0,
'4' => 0,
'5' => 0,
),
'relationship' => 'none',
'default_options_div_prefix' => '',
'default_argument_user' => 0,
'default_argument_fixed' => '',
'default_argument_php' => '',
'validate_argument_node_flag_name' => '*relationship*',
'validate_argument_node_flag_test' => 'flaggable',
'validate_argument_node_flag_id_type' => 'id',
'validate_argument_user_flag_name' => '*relationship*',
'validate_argument_user_flag_test' => 'flaggable',
'validate_argument_user_flag_id_type' => 'id',
'validate_argument_nid_type' => 'nid',
'validate_argument_is_member' => 0,
'validate_argument_node_type' => array(
'abteilung' => 0,
'artikel' => 0,
'bugtracker' => 0,
'event' => 0,
'mannschaft' => 0,
'seite' => 0,
),
'validate_argument_node_access' => 0,
'validate_argument_vocabulary' => array(
'7' => 0,
'5' => 0,
),
'validate_argument_type' => 'tid',
'validate_argument_transform' => 0,
'validate_user_restrict_roles' => 0,
'validate_argument_php' => '',
'override' => array(
'button' => 'Übersteuern',
),
),
));
$handler->override_option('filters', array(
'type' => array(
'operator' => 'in',
'value' => array(
'artikel' => 'artikel',
),
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'type',
'table' => 'node',
'field' => 'type',
'override' => array(
'button' => 'Übersteuern',
),
'relationship' => 'none',
),
'status_extra' => array(
'operator' => '=',
'value' => '',
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'status_extra',
'table' => 'node',
'field' => 'status_extra',
'relationship' => 'none',
'override' => array(
'button' => 'Übersteuern',
),
),
));
$handler->override_option('access', array(
'type' => 'none',
));
$handler->override_option('cache', array(
'type' => 'none',
));
$handler->override_option('title', 'Aktuelle Beiträge');
$handler->override_option('empty', 'Keine Artikel gefunden.');
$handler->override_option('empty_format', '1');
$handler->override_option('items_per_page', 5);
$handler->override_option('use_more', 0);
$handler->override_option('use_more_text', '');
$handler->override_option('distinct', 0);
$handler->override_option('style_options', array(
'grouping' => '',
));
$handler->override_option('row_plugin', 'node');
$handler->override_option('row_options', array(
'relationship' => 'none',
'build_mode' => 'teaser',
'links' => 0,
'comments' => 0,
));
$handler = $view->new_display('panel_pane', 'Content pane', 'panel_pane_2');
$handler->override_option('pane_title', '');
$handler->override_option('pane_description', '');
$handler->override_option('pane_category', array(
'name' => 'View panes',
'weight' => 0,
));
$handler->override_option('allow', array(
'use_pager' => FALSE,
'items_per_page' => FALSE,
'offset' => FALSE,
'link_to_view' => FALSE,
'more_link' => FALSE,
'path_override' => FALSE,
'title_override' => FALSE,
'exposed_form' => FALSE,
));
$handler->override_option('argument_input', array(
'group_nid' => array(
'type' => 'panel',
'context' => 'node.uid',
'panel' => '0',
'fixed' => '',
'label' => 'Organische Gruppen: Gruppen',
),
));
$handler->override_option('link_to_view', 0);
$handler->override_option('inherit_panels_path', 0);
$handler = $view->new_display('page', 'Seite', 'page_1');
$handler->override_option('items_per_page', 10);
$handler->override_option('use_pager', '1');
$handler->override_option('path', 'artikel/%');
$handler->override_option('menu', array(
'type' => 'none',
'title' => '',
'description' => '',
'weight' => 0,
'name' => 'navigation',
));
$handler->override_option('tab_options', array(
'type' => 'none',
'title' => '',
'description' => '',
'weight' => 0,
));
- Anmelden oder Registrieren um Kommentare zu schreiben
Bug in 6.14
am 22.09.2009 - 08:55 Uhr
Wird sich wohl um den Bug in 6.14 handeln. Wird hier besprochen. Auch als Issue unter Views zu finden, liegt aber wohl am Core und nicht an Views.
Beste Grüße
Werner
Danke für die schnelle Antwort!
am 22.09.2009 - 15:54 Uhr
Hallo Werner,
dank Dir für die schnelle Antwort!
Schöne Grüße,
![Ralf Hendel auf XING](http://www.xing.com/img/buttons/7_de_btn.gif)
Ralf Hendel
nur: wie gelöst?
am 28.09.2009 - 08:07 Uhr
Ich habe auch doppelte Gruppen, seit drupal 6.14
komischerweise nur für Nutzer nicht für Admin.
komme mit Patch aber nicht klar, bzw. habe sowas noch nie gemacht.
thanx
axel
Habe die Views temporär auf "Eindeutig" gestellt.
am 28.09.2009 - 08:17 Uhr
Hallo Axel,
wirklich gelöst habe ich das Problem nicht. Ich habe es umschifft, indem ich die entsprechenden Views zunächst auf eindeutig gestellt habe. So, wie ich den Thread verstanden habe, rechne ich in Kürze mit neuen Versionen, die dies beheben werden.
Schöne Grüße,
| comm-press.de
Ralf Hendel
Das funktioniert, Danke
am 28.09.2009 - 08:37 Uhr
Ich habe es umschifft, indem ich die entsprechenden Views zunächst auf eindeutig gestellt habe.
Vielen Dank für diesen Tipp.
Was so ein kleiner Haken auslöst, super.
Anbei Screenshot für "Nachfolger", die vielleicht den Haken suchen (am Beispiel Gruppen / views OG).
Thanx
axel
... diese Option sollte man nachträglich wieder deaktivieren.
am 28.09.2009 - 08:45 Uhr
Distinct-Views verschlingen erheblich mehr Performance als "normale" Selects.
Wenn der Bug nicht wäre, wären diese Distincts überflüssig.
Schöne Grüße,
| comm-press.de
Ralf Hendel
klappt nicht für alle Rollen
am 19.11.2009 - 11:46 Uhr
Hallo,
nachdem jetzt "Klagen" kamen, stellte ich fest, dass viele Nutzer es trotzdem noch doppelt sehen. Nur als Admin scheint es behoben. sehr seltsam.
Axel
..................................................................
hinter jedem Netzwerk stecken Menschen
www.globales-dorf.de
known bug, but...
am 19.11.2009 - 12:43 Uhr
Hallo Axel,
der Fehler ist mittlerweile "known Bug" und wird mit dem nächsten Drupal Kernel Update behoben. Bis dahin helfen nur die Patches weiter...
Schöne Grüße,
| comm-press.de
Ralf Hendel
gut zu wissen
am 20.11.2009 - 08:52 Uhr
Hallo Ralf,
gut zu wissen, Danke.
Patches sind nicht so mein Ding (ich las auch mal, dass man das eher nicht machen sollte), drum warte ich auf das Update.
thanx
axel
.................................................................
hinter jedem Netzwerk stecken Menschen
www.globales-dorf.de
ist das endlich behoben? ich
am 18.07.2012 - 21:02 Uhr
ist das endlich behoben? ich habe drupal 7 und immer noch das gleiche problem
Funktioniert! Denn Feld
am 19.07.2012 - 11:41 Uhr
Funktioniert! Denn Feld auswählen -> DESIGN-EINSTELLUNGEN -> Feldvorlage verwenden Aktivieren und schon funktionierts keine doppelte einträge mehr :-)