Ich definiere ein neues benutzerdefiniertes Feld für Benutzer:
User.find_each do |user|
user.custom_fields['foo'] = 0
user.save_custom_fields
end
Das funktioniert – jetzt hat jeder Benutzer 8 benutzerdefinierte Felder:
[18] pry(main)=> User.find(1).custom_fields
=> {
"patreon_id" => "83297319",
"last_chat_channel_id" => 32,
"last_digest_special_post" => "275200",
"last_digest_favorite_post" => "279347",
"example_field" => "new value",
"ai_bot_query_count" => "0",
"ai_bot_query_date" => "2025-01-12",
"foo" => "0"
}
Der Data Explorer sieht das neue Feld:
SELECT * from user_custom_fields
WHERE name LIKE '%foo%'
LIMIT 10
Jetzt möchte ich das Feld foo in JavaScript verwenden. Ich füge etwas Code unter /admin/customize/themes/3/common/head_tag/edit hinzu. Aber nur 2 der 8 werden angezeigt:
api.getCurrentUser().custom_fields
{
last_chat_channel_id: 32,
ai_bot_query_count: '0'
}
Was übersehe ich?
Moin
12. Januar 2025 um 14:51
2
Haben Sie Ihre Benutzerfelder zur Website-Einstellung public user custom fields hinzugefügt?
Diese Anleitung erklärt, wie Benutzer benutzerdefinierte Feldinformationen über die API verfügbar gemacht werden, ohne sie auf einer Benutzerkarte anzuzeigen.
Erforderliche Benutzerebene: Administrator
Diese Anleitung führt Sie durch den Prozess, Benutzerdefinierte Feldinformationen über die API zugänglich zu machen, ohne sie auf einer Benutzerkarte anzuzeigen. Dies kann nützlich sein, wenn Sie programmgesteuert auf benutzerdefinierte Benutzerdaten zugreifen …
Danke, das hat funktioniert.
Noch eine Frage: Sind diese benutzerdefinierten Benutzerfelder etwas anderes?
Dieser Leitfaden erklärt, wie du benutzerdefinierte Benutzerfelder in Discourse erstellst und konfigurierst, einschließlich der Hinzufügung zu den Anmeldeformularen, Benutzerprofilen und dem Benutzerverzeichnis.
Erforderliche Benutzerebene: Administrator
Benutzerdefinierte Benutzerfelder ermöglichen es dir, zusätzliche Informationen von deinen Benutzern zu sammeln, die über die Standardprofilfelder hinausgehen. Diese Felder können auf Benutzerkarten, Benutzer…