Je cours dans un petit problème (débutant).commentaires ne pas enregistrer post_id
J'ai 2 modèles: question & reviews.
avis schéma: question_id, user_id, note, les commentaires
Sur la vue 'show', j'ai intégré le formulaire ci-dessous (formtastic):
- semantic_form_for @question.reviews.build do |f|
= f.error_messages
= f.input :rating
= f.input :comments
= f.buttons
crée mon contrôleur critiques action ressemble Cependant, maintenant, il ne semble tout simplement pas enregistrer l'identifiant de la question dans le champ question_id (0). Il enregistre bien l'user_id.
Est-ce que quelqu'un a une idée de ce que je fais mal? Si vous avez besoin de journaux, faites le moi savoir! Merci d'avance
thx, j'ai pensé que cela pourrait être une solution oui. Mais, ne peut-il pas simplement changer la valeur du champ afin qu'il change la valeur d'une autre question? Je pensais que l'ajouter dans le contrôleur serait plus sûr? Ou n'est-ce pas un facteur? Merci encore! –
Vous avez raison de ne pas faire confiance à tout ce que vous ne voulez pas que l'utilisateur change potentiellement. Vous devriez toujours faire une sorte de vérification des permissions pour voir si l'utilisateur est capable de faire ce qu'il essaie de faire. Idéalement, cette responsabilité est encapsulée dans un module d'autorisation (c.-à-d. Cancan) plutôt que d'essayer de l'appliquer dans l'action du contrôleur. Cela signifie que vous devriez avoir un filtre avant qui n'a pas les permissions * ou * devrait échouer s'ils n'ont pas les permissions. – semanticart