Jump to content

Extension:IDProvider

From mediawiki.org
This page is a translated version of the page Extension:IDProvider and the translation is 25% complete.
MediaWiki 拡張機能マニュアル
IDProvider
リリースの状態: 安定
実装 パーサー関数
説明 Provides IDs using different ID algorithms
作者 Simon Heimler, Alexander Gesinn
メンテナー gesinn.it
最新バージョン 2.0.3 (2022-12-07)
MediaWiki 1.31
データベースの変更 はい
Composer gesinn-it/id-provider
ライセンス MIT ライセンス
ダウンロード

The IDProvider extension provides the generation of (unique) IDs through different ID algorithms. They can be accessed through parser functions, API or as a static PHP function.

Installation

  • Download, extractして、ファイルをextensions/フォルダー内のIDProviderという名前のディレクトリ内に配置します。
  • 以下のコードを LocalSettings.php ファイルの末尾に追加します:
    wfLoadExtension( 'IDProvider' );
    
  • 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベーステーブルを自動的に作成します。
  • Yes 完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。


Installation via Composer is broken.

使用法

The ApiSandbox will display and document all available options. All parameters are given as key values and work the same way whether you use the parser function, api or a static php call.

Through parser functions

This makes most sense in combination with Page Forms . There it can be used for auto-creating unique page titles.

You should avoid spaces within the parser functions if you use it as a parameter of a Page Form info tag.
{{{info|page name={{#idprovider-increment:Feature_|padding=5}} }}}

#idprovider-increment

{{#idprovider-increment:}}
{{#idprovider-increment:Issue_}}
{{#idprovider-increment:
  |prefix=Issue_
  |padding=5
  |skipUniqueTest=true
}}

#idprovider-random

{{#idprovider-random:}}
{{#idprovider-random:uuid}}
{{#idprovider-random:fakeid}}
{{#idprovider-random:
  |type=uuid
  |skipUniqueTest=true
}}

Through the API

#idprovider-increment

  • api.php?action=idprovider-increment
  • api.php?action=idprovider-increment&prefix=Issue_&padding=8&skipUniqueTest=true

#idprovider-random

  • api.php?action=idprovider-random&type=uuid
  • api.php?action=idprovider-random&type=fakeid&prefix=Issue_&skipUniqueTest=true

IDProvider Example

Through a static PHP call

For more examples, take a look at the unit-tests.

IDProviderFunctions::getIncrement

$id = IDProviderFunctions::getIncrement([
	'prefix' => '___TEST___',
	'padding' => 8,
]);

IDProviderFunctions::getRandom

$id = IDProviderFunctions::getRandom([
	'type' => 'fakeid',
	'prefix' => 'PREFIX_',
]);

関連項目

  • Extension:IDGenerator - Provides a parser function for numeric IDs. Alternative to IDProvider that can be installed via Composer.