J'ai créé une application Ruby on Rails qui permet aux utilisateurs de suivre les entraînements. Je leur permet de faire un exercice privé ou public qui est dénoté en passant l'entier 1
à Workout.share
. Je cherche maintenant à afficher certains sous-ensembles de ceux public_workouts
. J'appelle tous public_workouts
par un named_scope:Suppression d'enregistrements avec un champ vide à l'aide d'un scope_courbe
# workouts_controller.rb
@workouts = Workout.public_workouts.all
...
# workout.rb
named_scope :public_workouts, :conditions => {:share => 1}
Le tableau de la séance d'entraînement a également une colonne pour rounds
. Je veux limiter la sortie de public_workouts
aux seuls enregistrements qui ont quelque chose dans workout.rounds
. Un autre mot, si workout.rounds
est vide alors je ne veux pas que cela soit inclus.
Quelle est la meilleure façon de faire cela?
MISE À JOUR:
Je l'ai dit que j'utilise des rails 2.3.8
ne semble pas fonctionner, mais je pas mentionner que j'utilisais les rails 2.3.8, cela changerait-il la syntaxe? – bgadoci
cela wouldnt mais cela suppose que workouts.rounds n'est pas NULL essayez de changer IS NOT NULL sur <> '' (cela devrait représenter la chaîne blanche - mais je n'essaie pas cela) – codevoice
Ah, en fait cela a fonctionné. J'essayais de l'appliquer aussi à une autre colonne que j'ai, c'est une chaîne. Qu'est-ce qui serait nécessaire à la place de IS NOT NULL pour vérifier si la chaîne est vide? – bgadoci