Je le code suivant:validates_uniqueness_of ... limiter la portée - Comment puis-je limiter quelqu'un de créer un certain nombre d'entrées
class Like < ActiveRecord::Base
belongs_to :site
validates_uniqueness_of :ip_address, :scope => [:site_id]
end
qui limite une personne de « goût » d'un site plus d'une fois sur la base sur une requête ip distante. Essentiellement, quand quelqu'un "aime" un site, un enregistrement est créé dans la table des J'aime et j'utilise un champ caché pour demander et passer son adresse IP à la colonne: ip_address dans la table like. Avec le code ci-dessus je limite l'utilisateur à un "j'aime" par leur adresse IP. Je voudrais limiter à un certain nombre, par exemple 10.
Ma pensée initiale était de faire quelque chose comme ceci:
validates_uniqueness_of :ip_address, :scope => [:site_id, :limit => 10]
Mais cela ne semble pas fonctionner. Y a-t-il ici une syntaxe simple qui me permettra de faire une telle chose?
Je passe avec succès l'adresse_ip à travers une requête distante à la table similaire. Je viens de mettre votre code et aucun dé. Obtenir une erreur pour 'méthode non définie pour' count '. En se référant à "like_count". – bgadoci
Mise à jour de ma réponse, réessayez. –
Ah, toujours pas aller. Mais cela fait partie de la même application que je vais vous donner accès. Je pense que vous l'aimerez réellement, je suis plutôt satisfait d'aller aussi loin. Beaucoup d'amusement. – bgadoci