Actions

Difference between revisions of "Mahara日本語ドキュメント/カスタマイズ/データベース"

From Mahara Wiki

< Mahara日本語ドキュメント‎ | カスタマイズ
Line 11: Line 11:
 
コアデータベーステーブルが設定された後、local_preinst()関数が実行されます。そして、プラグインテーブルが設定される前、すべてのコアデータベーステーブルが設定された後、adminユーザが作成された後、そしてadminユーザがログインする直前にインストール処理の最後としてlocal_postinst()関数が実行されます。私たちは必要に応じて、後でこのファイルにフック (hook 独自処理) を追加することができます。
 
コアデータベーステーブルが設定された後、local_preinst()関数が実行されます。そして、プラグインテーブルが設定される前、すべてのコアデータベーステーブルが設定された後、adminユーザが作成された後、そしてadminユーザがログインする直前にインストール処理の最後としてlocal_postinst()関数が実行されます。私たちは必要に応じて、後でこのファイルにフック (hook 独自処理) を追加することができます。
  
Maharaコア内にて、version.phpおよびupgrade.phpは同じように動作します。admin/upgrade.phpページにアクセスされた場合、ローカルコードのバージョンナンバー (local/version.php内) がデータベースのconfigテーブル内の「localversion」と比較されます。コードがデータベースより新しい場合、xmldb_local_upgrade関数 (local/upgrade.php内) が実行され、データベースの「localversion」が渡されます。ここに置かれたコードは、コードバージョンに対してデータベースバージョンをテストすべきです。コア内での動作例として、/htdocs/lib/db/upgrade.phpをご覧ください。
+
Maharaコア内にて、version.phpおよびupgrade.phpは同じように動作します。admin/upgrade.phpページにアクセスした場合、ローカルコードのバージョンナンバー (local/version.php内) がデータベースのconfigテーブル内の「localversion」と比較されます。コードがデータベースより新しい場合、xmldb_local_upgrade関数 (local/upgrade.php内) が実行され、データベースの「localversion」が渡されます。ここに置かれたコードは、コードバージョンに対してデータベースバージョンをテストすべきです。コア内での動作例として、/htdocs/lib/db/upgrade.phpをご覧ください。
  
 
[[Category:カスタマイズ]]
 
[[Category:カスタマイズ]]

Revision as of 04:18, 17 August 2011

作成中です - mits

Maharaのカスタマイズに関して、サイトのインストール中にデータベースを変更して、あなたのデータベースカスタマイズ部分を更新する必要が生じる場合もあります。

Mahara 1.2以降、サイト特有のデータベース更新は「/local」ディレクトリにカスタムインストールおよび更新コードを入れることにより、Moodleと同じくコアのインストールおよびアップグレードコードから分離されました。このことにより、ローカルのカスタマイズはMaharaコアで使用されるデータベースに関して、独立した一連のバージョンナンバーのデータベースを使用することができます。

データベースを変更するカスタムPHPコードは「htdocs/local/install.php」および「htdocs/local/upgrade.php」に入ります。

install.php において:

コアデータベーステーブルが設定された後、local_preinst()関数が実行されます。そして、プラグインテーブルが設定される前、すべてのコアデータベーステーブルが設定された後、adminユーザが作成された後、そしてadminユーザがログインする直前にインストール処理の最後としてlocal_postinst()関数が実行されます。私たちは必要に応じて、後でこのファイルにフック (hook 独自処理) を追加することができます。

Maharaコア内にて、version.phpおよびupgrade.phpは同じように動作します。admin/upgrade.phpページにアクセスした場合、ローカルコードのバージョンナンバー (local/version.php内) がデータベースのconfigテーブル内の「localversion」と比較されます。コードがデータベースより新しい場合、xmldb_local_upgrade関数 (local/upgrade.php内) が実行され、データベースの「localversion」が渡されます。ここに置かれたコードは、コードバージョンに対してデータベースバージョンをテストすべきです。コア内での動作例として、/htdocs/lib/db/upgrade.phpをご覧ください。