Defino un nuevo campo personalizado de usuario:
User.find_each do |user|
user.custom_fields['foo'] = 0
user.save_custom_fields
end
Eso funciona, ahora cada usuario tiene 8 campos personalizados:
[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"
}
Data Explorer ve el nuevo campo:
SELECT * from user_custom_fields
WHERE name LIKE '%foo%'
LIMIT 10
Ahora quiero usar el campo ‘foo’ en javascript. Agrego algo de código en /admin/customize/themes/3/common/head_tag/edit. Pero solo aparecen 2 de los 8:
api.getCurrentUser().custom_fields
{
last_chat_channel_id: 32,
ai_bot_query_count: '0'
}
¿Qué me estoy perdiendo?
Moin
12 Enero, 2025 14:51
2
¿Añadió sus campos de usuario a la configuración del sitio campos de usuario personalizados públicos?
Esta guía explica cómo exponer datos de campos personalizados de usuario a través de la API sin mostrarlos en una tarjeta de usuario.
Nivel de usuario requerido: Administrador
Esta guía te guiará a través del proceso de hacer que los datos de Campos Personalizados de Usuario sean accesibles a través de la API sin mostrarlos en una tarjeta de usuario. Esto puede ser útil cuando necesites acceder programáticamente a datos de usuario personalizados mientras los …
Gracias, eso funcionó.
Una pregunta más: ¿son estos campos de usuario personalizados algo diferente?:
Esta guía explica cómo crear y configurar campos de usuario personalizados en Discourse, incluyendo cómo agregarlos al formulario de registro, a los perfiles de usuario y al directorio de usuarios.
Nivel de usuario requerido: Administrador
Los campos de usuario personalizados permiten recopilar información adicional de tus usuarios más allá de los campos de perfil estándar. Estos campos pueden mostrarse en las tarjetas de usuario, en las páginas de resumen de…