2016-10-31 2 views
0

ich auf dem Wiki arbeite, wo jedes Element seine eigene Seite und seine Mittel hat es den Erwerb aufgeführt alsListing Seiten nur einen Wert für Mehrwerteigenschaft

[[Is acquired::somewhere]] 
[[Is acquired::somewhere else]] 
[[Is acquired::some third acquisition way, really long one with some [[wiki]] links in it]] 

Die Eigenschaft Is acquired Typ text definiert hat.

Meine primäre Frage ist: Wie kann ich eine Liste der Elemente zeigen, die nur eine Möglichkeit zugewiesen haben, sie zu erhalten (dh eine Is acquired Eigenschaftswert)?

Secondary ist: Wie diese Elemente aufzulisten, die nur eine Art und Weise haben sie und auf diese Weise enthält einige spezifische Text zu erwerben?

Ich habe gelesen Extension:Arrays und auch Count format und Subqueries Dokumentation, aber ich kann es einfach nicht herausfinden, wie man alles zusammenstellt.

Bitte beachten Sie, dass vorzugsweise Ich mag Extension:Arrays mit vermeiden, wenn es überhaupt möglich ist, da dies derzeit nicht von Wiki unterstützt Ich arbeite an.

Antwort

1

Ich glaube, dass es in SMW keine Möglichkeit gibt, nach Anzahl der Eigenschaftswerte zu filtern, also sollten Sie hier Extension:Arrays verwenden.

Neue Eigenschaft einführen, die als Flag verwendet wird, z. Is only one way mit Werten Yes/No. Auf Ihren Seiten (mit Is acquired Eigenschaften) in Code wie folgt unten:

{{#arraydefine:test_arr|{{#show: {{PAGENAME}}|?Is acquired}}|,}} 
{{#ifeq:{{#arraysize:test_arr}}|1|[[Is only one way::Yes]]|[[Is only one way::NO]]}} 

Auf diese Weise alle Ihre Seiten eine Eigenschaft Is only one way mit Werten Yes oder No so können enthalten werden Sie auf sie filtern:

{{#ask: [[Is acquired::+]] [[Is only one way::Yes]] }} 

Geben Sie Seiten mit nur einem Wert für Is acquired Eigenschaft festgelegt.

+0

danke guten sir! :) – FurloSK