Adding Custom Fields via Plugin Outlet の議論を続けます。
user-preferences-profile 出口にカスタム設定を追加してみました。
また、カスタム属性を Ember 側のユーザーモデルの save メソッドに渡せるように、controllers/preferences/profile.js を再編集して、saveAttrNames 配列に属性を追加しました。しかし、デバッグの結果、user モデルの save メソッドは、userFields、userOptionFields などのいずれかの配列に含まれていないフィールドを、_.intersection 呼び出しで単純に無視してしまうことがわかりました。
このデータをユーザーモデル自体を通じてサーバーに送信するための API を提案します。もしこれが意図的な設計選択である場合、その理由を理解したいか、あるいはこれを実現する別の方法があるかどうかを確認したいと考えています。
私のユースケースは、プラグインを通じて preferences ページに設定を追加し、同じ「変更を保存」ボタンを使って他の設定と一緒に保存することです。
discourse-cakeday がこれを実現していることは承知していますが、date_of_birth フィールドが userFields 配列に含まれているため、動作しています。