ユーザーのプロフィール写真への自動更新リンクは可能ですか?各ユーザーにアバター用の「スロット」を1つ与えるような。

管理ユーザーとモデレーター向けの「サイトスタッフ」ページを設定しようとしており、理想的には、そこにすべてのプロフィール写真も表示したいと考えています。たとえば次のようになります。

# codinghorror

Bio: 私は存在します
連絡先情報: その他

しかし、スタッフメンバーがプロフィール写真を変更するたびに、このページを手動で更新したくはありません。

これを行うための方法は2つ考えられます。ユーザーが新しいプロフィール写真をアップロードしたときに、古い写真を直接置き換えてリンクを同じままにする(こちらの方が望ましいと考えられます)、またはユーザーの現在の头像の場所をリダイレクトするようなリンクを作成することです。

これを達成するための最善の方法について、何か考えはありますか?テストしたところ、単に現在の写真のリンクをコピーするだけでは意図したとおりに機能しません。

上記で述べたように、各ユーザーに新しいプロフィール写真を同じ場所にアップロードするように強制できれば、ストレージスペースを節約できます。これにより、同じリンクが意図したとおりに機能するようになり、ストレージスペースも節約できます。

それは基本的に、About - Discourse Meta のような「概要」ページと同じではありませんか?

異なるシステム間でユーザー情報を同期させておくための「正しい」方法は、DiscourseConnect - Discourseの公式シングルサインオン(SSO)を使用することです。しかし、現在のフォーラム管理者の静的ページが欲しいだけであれば、これはやりすぎかもしれません。その場合、/about.json を解析して更新するスクリプトを毎日/毎週実行するという方法も考えられます。

「いいね!」 3

はい、実際のサイトでユーザーが登録することに満足していますので、SSOは少しやりすぎのように思えます。アバウトページについては、経歴や外部連絡先情報を記載する場所がないため、ワンストップショップとしての機能が損なわれるという問題があります。また、アバウトページにこれらすべてを追加することは、別のページで更新可能な画像を取得することよりも難しいと考えています。

スクリプトは悪くないアイデアですが、可能であれば即時の応答時間が望ましいです。ユーザーがプロフィール写真とステータスを視覚的に結びつけることができるのは便利であり、ページ上の写真と使用中の写真が一致しない場合、新規ユーザーを混乱させる可能性があります。

さらに、古いプロフィール写真が上書きされるのではなく保存されているという事実は、ストレージの観点からも不利であるように思われます。各ユーザーにプロフィール写真が保存されているリンクを1つだけ提供し、変更があった場合にその画像を置き換えることができれば、一石二鳥になるように思われます。

サイト設定で、アバウトページに外部連絡先を追加できます。

アバウトページをページレンダリングプロセスで解析するのではなく、バックグラウンドタスクで定期的に実行することを意図していました。

これは、そのページを構築するために使用するテクノロジーによって異なります。たとえば、JAMstackを使用している場合、これはコンパイルフェーズで理にかなっています。Railsアプリの場合は、毎日実行され、データベース内のローカルキャッシュを更新するActive Jobが考えられます。

これらは孤立したアップロードと呼び、バックグラウンドタスクによって数日後に自動的にクリーンアップされます。

「いいね!」 2

孤立したアップロードを新しいアップロードに置き換える方が理にかなっているのではないでしょうか?

私にはウィンウィンのように思えますが、私はウェブ開発者ではないので、何か見落としている可能性があります。