Rozšíření:Cargo

This page is a translated version of the page Extension:Cargo and the translation is 100% complete.
Základní informace k tomuto rozšíření MediaWiki
Cargo
Stav rozšíření: stabilní
Zavádění Speciální stránka , API , Funkce analyzátoru
Popis Rozšíření, které umožňuje ukládání dat a dotazování na data obsažená v šablonách.
Napsal(i) Yaron Koren <yaron57@gmail.com> (Yaron Korendiskuse)
Nejnovější verze 3.5.1 (března 2024)
Zásady kompatibility Hlavní vývojová větev zachovává zpětnou kompatibilitu.
MediaWiki 1.37+
Změny v databázi Ano
Composer mediawiki/cargo
Tabulky cargo_tables
cargo_pages
cargo_backlinks
Licence GNU General Public License 2.0 nebo pozdější
Zdrojový kód
Příklad Stránka obsahující různá volání na #cargo_query
  • $wgCargoFileDataColumns
  • $wgCargoDrilldownLargestFontSize
  • $wgCargoDecimalMark
  • $wgCargoDefaultStringBytes
  • $wgCargoAllowedSQLFunctions
  • $wgCargoHideNamespaceName
  • $wgCargoPageDataColumns
  • $wgCargoMaxVisibleHierarchyDrilldownValues
  • $wgCargoDrilldownSmallestFontSize
  • $wgCargoIgnoreBacklinks
  • $wgCargoRecurringEventMaxInstances
  • $wgCargoDefaultMapService
  • $wgCargoStoreUseTemplateArgsFallback
  • $wgCargoLegacyNullLuaFieldsAsEmptyString
  • $wgCargoTablesPrioritizeReplacements
  • $wgCargoDigitGroupingCharacter
  • $wgCargoDefaultQueryLimit
  • $wgCargoDrilldownNumRangesForNumbers
  • $wgCargo24HourTime
  • $wgCargoMaxQueryLimit
  • $wgCargoDrilldownUseTabs
  • $wgCargoMapClusteringMinimum
  • $wgCargoDrilldownMinValuesForComboBox
  • recreatecargodata
  • deletecargodata
  • runcargoqueries
Čtvrtletní stahování 88 (Ranked 72nd)
Přeložte rozšíření Cargo
Problémy Otevřené úkoly · Nahlásit chybu

Cargo 'je rozšíření MediaWiki, které poskytuje snadný způsob ukládání a dotazování na data obsažená v rámci volání šablon, například infoboxů. V konceptu je podobné rozšíření Rozšíření:Semantic MediaWiki , ale nabízí řadu výhod, včetně jednoduchosti instalace a snadného použití.

Cargo ukládá všechna svá data do databázových tabulek, které lze umístit buď do vlastní databáze MediaWiki (výchozí) nebo do samostatné databáze. Z větší části získává každá šablona svá data uložená jen v jediné tabulce DB se sloupcem pro každý vhodný parametr šablony. Existuje několik výjimek: Zpracování polí šablon, která obsahují pole nebo seznamy hodnot, a polí, která obsahují zeměpisné souřadnice, je složitější kvůli špatnému nativnímu (nezměněném stavu) zpracování těchto datových typů ve většině systémů DB. A lze nastavit několik šablon, aby všechny ukládaly svá data do jediné tabulky DB.

Přípona definuje řadu funkcí syntaktického analyzátoru. Tyto tři jsou nejdůležitější:

  • #cargo_declare - umístěné v části ‎<noinclude> šablony. Definuje schéma pro tabulku.
  • #cargo_store - ukládá jeden řádek do Cargo table. Obvykle umístěné v rámci ‎<includeonly> šablony.
  • #cargo_query - dotazuje jednu nebo více datových tabulek Cargo pomocí součástí SQL.

Další definované funkce analyzátoru jsou:

  • #cargo_attach - definuje šablonu jako přidání řádků do tabulky deklarované jinde.
  • #cargo_compound_query - zobrazí výsledky více dotazů na jednom místě.
  • #cargo_display_map - zobrazí mapu s jedním bodem.
  • #recurring_event - vytiskne data pro opakující se událost. Pro použití #cargo_store.

Cargo také definuje různá rozhraní pro prohlížení a procházení těchto uložených dat. Jako takový přidává následující speciální stránky:

  • Special:CargoQuery
  • Special:CargoTableDiagram
  • Special:CargoTables
  • Special:Drilldown

Cargo bylo testováno a pracuje s databázovými systémy MySQL a PostgreSQL. Teoreticky také podporuje SQLite, ale nebyl dobře testován s SQLite a nemusí fungovat.

Tato verze rozšíření Cargo vyžaduje MediaWiki 1.35+.

Kliknutím na stránky na navigační liště výše se dozvíte více o Cargo, jak funguje, jak jej používat a jak jej nainstalovat.

Instalace

Viz Stažení a instalace .

Konfigurace

Níže jsou uvedena globální nastavení konfigurace Cargo spolu s jejich výchozími hodnotami.

Chcete-li nakonfigurovat Cargo tak, aby místo databáze MediaWiki používala samostatnou databázi, jsou k dispozici následující nastavení:

Samostatná nastavení konfigurace databáze
Nastavení Výchozí Popis
$wgCargoDBtype null Typ databáze.
$wgCargoDBserver null Název hostitele nebo IP adresa databázového serveru.
$wgCargoDBname null Název databáze.
$wgCargoDBuser null Uživatelské jméno databáze.
$wgCargoDBpassword null Heslo pro $wgCargoDBuser.
$wgCargoDBprefix null Předpona názvu databázové tabulky.
$wgCargoDBRowFormat null Formát řádku databáze.

Pro konfiguraci znaků související s čísly jsou k dispozici následující konfigurační nastavení:

Nastavení konfigurace znaků
Nastavení Výchozí Popis
$wgCargoDecimalMark . Desetinný znak pro čísla.
$wgCargoDigitGroupingCharacter , Oddělovač tisíců číslic.

Zbývající globální konfigurační nastavení jsou následující:

Nastavení Výchozí Popis
$wgCargoAllowedSQLFunctions [] Nastavuje povolené funkce SQL. Výchozí nastavení viz Použití funkcí SQL .
$wgCargoRecurringEventMaxInstances 100 Maximální počet instancí k uložení pro opakující se události bez nastaveného data ukončení.
$wgCargoDefaultStringBytes 300 Výchozí počet znaků pro pole typu Page, String, Wikitext string, File, URL, Email
$wgCargoDefaultQueryLimit 100 Počet výsledků, které se mají zobrazit pro #cargo_query, pokud není nastaven žádný limit
$wgCargoMaxQueryLimit 5000 Maximální povolený počet výsledků pro #cargo_query
$wgCargo24HourTime false Pokud true používá 24hodinový čas pro typy polí Datetime.
$wgCargoDefaultMapService OpenLayers Nastaví výchozí mapovou službu na Mapy Google, pokud je nastavena na googlemaps, na Leaflet, pokud je nastavena na leaflet, a na OpenLayers, pokud je nastavena na openlayers.
$wgCargoGoogleMapsKey null Klíč API pro Mapy Google pro formát zobrazení googlemaps.
$wgCargoMapClusteringMinimum 80 Pokud je počet zobrazených bodů na mapě větší než hodnota $wgCargoMapClusteringMinimum, mapa kvůli čitelnosti zobrazuje místa ve "shlucích" místo jednotlivých bodů. Pokud je nastaveno na velmi vysoké číslo, nezobrazuje shlukování.
$wgCargoDrilldownUseTabs true Zobrazuje názvy tabulek Special:Drilldown jako karty nahoře namísto svislého seznamu po straně.
$wgCargoDrilldownSmallestFontSize -1 Pokud je nastaveno na kladné číslo, nastaví nejmenší velikost písma v pixelech pro zobrazení hodnot filtrů ve stylu tag-cloud.
$wgCargoDrilldownLargestFontSize -1 Pokud je nastaveno na kladné číslo, nastaví největší velikost písma v pixelech pro zobrazení hodnot filtrů ve stylu tag-cloud.
$wgCargoDrilldownMinValuesForComboBox 40 Nastaví minimální počet hodnot, než se jejich zobrazení převede na pole se seznamem namísto jednotlivých odkazů.
$wgCargoDrilldownNumRangesForNumbers 5 Pro pole/filtry typu Integer nebo Float určuje počet "segmentů", do kterých jsou hodnoty rozděleny.
$wgCargoMaxVisibleHierarchyDrilldownValues 30 Je-li nastaveno na kladné celé číslo, určuje maximální počet hodnot zobrazených najednou pro libovolné pole hierarchy (zobrazeny jsou všechny hodnoty nejvyšší úrovně bez ohledu na tuto hodnotu). Hodnoty jsou skryté za určitou hloubkou hierarchie, takže počet celkových viditelných hodnot je nejvýše toto číslo.
$wgCargoTablesPrioritizeReplacements false Pokud je true, všechny tabulky, které mají náhradu, se zobrazí v horní části stránky Special:CargoTables, místo toho se zobrazí v abecedním pořadí.
$wgCargoPageDataColumns [] Sada polí, která se mají uložit do tabulky _pageData Cargo. Viz Ukládání dat stránky .
$wgCargoFileDataColumns [] Sada polí, která se mají uložit do tabulky _fileData Cargo. Viz Ukládání dat souboru .
$wgCargoHideNamespaceName [6] Pole jmenných prostorů, které se mají skrýt před výsledky dotazu.
$wgCargoLegacyNullLuaFieldsAsEmptyString false Null results to the Lua Cargo query function should return as string rather than nil. This allows you to rollback a breaking change from early 2022. New wikis created after this time should not enable this.
$wgCargoStoreUseTemplateArgsFallback true Enable the behavior that looks for template arguments that match the template's declared table to fill columns.


Související odkazy