У меня проблемы при попытке извлечь запись из базы данных, когда start_day и end_day равны, если я хочу увидеть запись может быть: "from" 6 мая 2009 г. до 6 мая 2009 г. Это не дает я запись и есть в базе данных, он дает мне запись, только если тип "От" 06 мая 2009 года до 7 мая 2009 года. и мой код.
def generate_emails
@start = "#{params[:start][:day]}-#{params[:start][:month]}-#{params[:start][:year]}"
@start_date = Date.parse(@start) rescue
if !@start_date
render :update do |page|
page.hide "flash-error"
page.visual_effect :highlight, "flash-error", :duration => 3
page.replace_html "flash-error", "Invalid date, You selected #{params[:start][:day]} days for the #{params[:start][:month]} month"
page.show "flash-error"
end
return
end
@end = "#{params[:end][:day]}-#{params[:end][:month]}-#{params[:end][:year]}"
@end_date = Date.parse(@end) rescue
if !@end_date
render :update do |page|
page.hide "flash-error"
page.visual_effect :highlight, "flash-error"
page.replace_html "flash-error", "Invalid date, You selected #{params[:end][:day]} days for the #{params[:end][:month]} month"
page.show "flash-error"
end
return
end
@sent_message = SentMessage.find(:all, :conditions => ["message_type='Email' AND estate_id=? AND sent_date >= '#{@start_date}' AND sent_date <= '#{@end_date}' OR sent_date ='#{@start_date}' AND sent_date = '#{@end_date}' ", @estate_id], :order => "sent_date DESC")
конец
EDIT
По крайней мере, я получил ответ ..
def generate_emails
@start = "#{params[:start][:day]}-#{params[:start][:month]}-#{params[:start][:year]}"
@start_date = Date.parse(@start)rescue
if !@start_date
render :update do |page|
page.hide "flash-error"
page.visual_effect :highlight, "flash-error", :duration => 3
page.replace_html "flash-error", "Invalid date, You selected #{params[:start][:day]} days for the #{params[:start][:month]} month"
page.show "flash-error"
end
return
end
@end = "#{params[:end][:day]}-#{params[:end][:month]}-#{params[:end][:year]}"
@end_date = Date.parse(@end) rescue
if !@end_date
render :update do |page|
page.hide "flash-error"
page.visual_effect :highlight, "flash-error"
page.replace_html "flash-error", "Invalid date, You selected #{params[:end][:day]} days for the #{params[:end][:month]} month"
page.show "flash-error"
end
return
end
if @start_date == @end_date
@start_date = DateTime.parse(@start)-1
@end_date = DateTime.parse(@end)
@sent_message = SentMessage.find(:all, :conditions => ["message_type='Email' AND estate_id=? AND sent_date >= '#{@start_date}' AND sent_date = '#{@end_date}' ", @estate_id], :order => "sent_date DESC")
end
@sent_message = SentMessage.find(:all, :conditions => ["message_type='Email' AND estate_id=? AND sent_date >= '#{@start_date}' AND sent_date <= '#{@end_date}' OR sent_date ='#{@start_date}' AND sent_date = '#{@end_date}' ", @estate_id], :order => "sent_date DESC")
конец