sfDoctrineGuardPlugin
Symfony アプリケーションでユーザー、グループ、および認証を管理するために使用しています。
sfGuardUser
モデルにアバターを追加したいと思います。どうやってやるの?最善のアプローチは何ですか?インターネットでいくつかの方法を見てきましたが、コードを台無しにしたくありません。
ありがとう!
sfDoctrineGuardPlugin
Symfony アプリケーションでユーザー、グループ、および認証を管理するために使用しています。
sfGuardUser
モデルにアバターを追加したいと思います。どうやってやるの?最善のアプローチは何ですか?インターネットでいくつかの方法を見てきましたが、コードを台無しにしたくありません。
ありがとう!
2つの方法があります。
2つ目は、ユーザーモデル内に多くの情報を含めることを計画している場合に特に推奨されます。ただし、追加するアバターフィールドしかない場合は、sfGuardUserを拡張する方が便利です。
これを行うには、新しいsfGuardUser.schema.ymlを/config/フォルダー内に配置します。プラグインの代わりに使用されます。
「プロファイル」を作成するために特に知っておくべきことはありません。
Profile:
tableName: profile
columns:
sf_guard_user_id: integer
firstname: varchar(100)
phone: varchar(15)
relations:
sfGuardUser: { class: sfGuardUser, onDelete: CASCADE, local: sf_guard_user_id, foreign: id, foreignType: one }
私の推奨するアプローチは、データベースの変更を必要としません:
sfWidgetFormInputFileEditable
にとを追加sfValidatorFile
しsfGuardUserForm
ます。必要に応じてウィジェットとバリデーターを構成します (削除の許可、画像の種類、サイズなど)。sfGuardUser
ユーザーの不変プロパティに基づいて一意のパスを生成するメソッドを追加します (ユーザー ID のハッシュなど)。