Il est difficile de dire où votre page.count
entre en jeu. Dans Railish, vous trouverez pages.count
(notez les 's'). En outre, count
(et également size
) est un attribut en lecture seule sur les tableaux et les hachages et.al. fourni par ruby qui renvoie le nombre d'éléments. Vous ne définissez pas count
.
Ensuite, je ne sais pas où votre action turn
est censé vivre, sur le Livre ou la Page? Et qu'est-ce qui est censé se passer après ce qu'il fait? Enfin, une route est ce qui fait qu'une action est une action - sans elle, c'est juste une fonction.
Pendant un instant, nous supposerons que vous essayez de stocker le nombre de fois qu'une page d'un livre a été visitée. Ce serait une meilleure idée d'avoir une variable d'instance appelée reads
ou times_viewed
etc. dans votre modèle de page. En supposant que votre modèle Book utilise un routage reposant, dans l'action show
de Book, vous créez une variable d'instance du modèle Page visualisé et incrémentez son attribut reads
avant de rendre la vue. Si vous essayez de créer un lien de type "J'aime" dans Facebook, ce qui signifie que vous voulez mettre à jour un enregistrement dans une table sans envoyer l'utilisateur à une autre page, vous devez utiliser link_to_remote
* et un peu de javascript. Dans ce cas, je vous renvoie simplement aux Railscasts sur ce sujet.
* Je pense qu'à partir de Rails 3, link_to_remote
est devenu link_to
avec :remote => true
.