Rails 3 bu aramayla vardır:Rails 3 aramasında bir tarihte karşılaştırmadan daha fazlasını yapabilir misiniz?
Note.where(:user_id => current_user.id, :notetype => p[:note_type], :date => p[:date]).order('date ASC, created_at ASC')
Ama :date => p[:date]
koşul :date > p[:date]
için equivilent gerekmektedir. Bunu nasıl yapabilirim? Okuduğunuz için teşekkürler.
o güvenli? Yani p [: tarih] kullanıcı girdisinden geliyorsa, bir SQL enjeksiyonu neden olabilir mi? – MhdSyrwan
'where()' nedeniyle güvenlidir. 'Where()' işlevini kullanarak girişi otomatik olarak iptal eder. –
Simone'un yorumu tamamen doğru değil; '() işlevi, işlev çağrısında daha sonra listelenecek şekilde, değişkenler yerine soru işaretleriyle yukarıda gösterilen biçimde kullanıldığında girdiden otomatik olarak çıkar. Bu şekilde kullanmak güvenli DEĞİLDİR: 'Not.where (" date> # {p [: date]} ")' – bdx