Bonjour communauté Discourse !
Je suis nouveau sur Discourse et j’essaie d’utiliser mes quelques connaissances en Ruby. Merci de votre aide !
Voici mon projet :
J’ai créé des champs personnalisés pour mieux connaître un nouvel utilisateur et je souhaite maintenant mettre à jour le champ personnalisé pour les anciens utilisateurs.
Je veux afficher ma question à la connexion si le champ est vide.
Si je comprends bien Discourse, je dois coder un plugin.
Avez-vous une astuce ou un exemple en tête pour ce premier défi ?
Merci d’avance !
Dans la console Rails, j’utilise
UserCustomField.where.not(value: [nil])
pour trouver les utilisateurs qui ont déjà répondu, mais pour le reste, je suis à sec…
Comment obtenir les utilisateurs qui n’ont pas répondu à la question ?
Je suppose que je devrai trouver cela plus tard.
Deux suggestions :
-
Envisagez de demander comment résoudre votre problème (amener les utilisateurs à remplir le champ). Le plugin assistant utilisateur pourrait être une solution ?
-
Déplacez ceci dans Dev et demandez-y. Je pense que ce serait possible avec un composant de thème si les valeurs sont dans le sérialiseur.
Pour l’un ou l’autre, changez l’objet pour quelque chose comme « comment puis-je forcer les utilisateurs à remplir un champ personnalisé lorsqu’il est vide »
Je n’ai cependant pas de très bonne réponse. ![]()
Pour cette question spécifique, en supposant qu’une question sans réponse soit NULL dans la base de données, vous pouvez simplement remplacer where.not(value: [nil]) par where(value: nil).
Vous pouvez également utiliser where(value: [nil, ""]), ce qui est équivalent à WHERE (something.value IS NULL OR something.value = "") en SQL, pour rechercher une chaîne vide ou NULL. Je ne suis pas sûr de ce qui est le plus probable ou s’il est probable que cela change (de NULL à “”) si un utilisateur soumet un champ vide.
Merci @pfaffman. Je vais suivre votre conseil. ![]()
Merci @Simon_Manning pour cette précision. Cela va beaucoup m’aider !
Ce plugin est génial. Merci @pfaffman
Merci encore les gars. Le plugin Custom wizard fonctionne très bien ![]()