1

Symfony1.4プロジェクトでsfDoctrineGuardPluginを使用しようとしています。このプラグインには、関連するすべてのテーブルを定義するために使用されるschema.ymlファイルが含まれています。テーブル名は、sf_guard_user、sf_guard_user_group、sf_guard_user_permissionなどの形式になります。users、user_groups、user_permissionsなどのテーブルに名前を付けたいと思います。プラグインコードを直接編集せずにこれを行う方法はありますか? ?

4

2 に答える 2

5

プロジェクトのスキーマファイルでそれらをオーバーライドします。

sfGuardGroup:
  tableName: groups

sfGuardPermission:
  tableName: permissions

sfGuardGroupPermission:
  tableName: groups_permissions

また、それらを別のファイルに移動したいと思いますsfDoctinePlugin-schema.yml

お役に立てば幸いです。

于 2011-01-20T03:51:58.197 に答える
1

それは良い習慣ではありません、そして私はあなたがそれをするのを思いとどまらせます。

tableNameそうは言っても(そして太字で、ハハ)、含まれているスキーマをプロジェクトレベルのスキーマにコピーし、各レコード定義にキーを追加できるはずです。sfGuardUser本格的なプロファイルクラスを使用する代わりに、定期的に列を追加するため、この方法でスキーマを変更すると、一般的には機能することを知っています...テーブル名の変更も機能すると思います。

これにより、データベースを構築した後、テーブル名が表示されます。実際のプラグインコードで、モデルで定義されたエイリアスを使用する代わりに、誰かがテーブル名をハードコーディングした場合は、機能しない可能性があります。このような状況があるかどうかはわかりませんが、プロジェクトを進める前に徹底的にテストする必要があります。

于 2011-01-20T01:28:17.483 に答える