Вам нужно будет разбить дату, потому что вы хотите игнорировать год. Вам нужно будет использовать некоторые функции, предоставляемые вашим провайдером SQL (в примере ниже используется MySQL):
bdays = Soldier.find(:all, :conditions => ["DAY(birth_date) = ? AND MONTH(birth_date) = ?", Date.today.day, Date.today.month])
если вы используете SQLite (база данных по умолчанию для rails), это будет немного сложнее, потому что у них нет реального типа даты:
bdays = Soldier.find(:all, :conditions => ["STRFTIME('%d', birth_date) = ? AND STRFTIME('%m', birth_date) = ?", Date.today.day, Date.today.month])