**Controller**
def today_attendance
@date = params[:date]?Date.parse(params[:date]): Date.today
@attendances = Attendance.joins(:user).where(date: @date).select(:email,
:password, :date, :status)
end
**Views** (Just changed from GET to POST method)
<%= button_to '<', attendance_path(date: @date - 1.day) %>
<%= "#{@date.strftime("%A")}, #{@date.strftime("%d")} #{@date.strftime("%B")} #{@date.year}" %>
<%= button_to '>', attendance_path(date: @date + 1.day) %>
**Routes**
resources :users do
resources :attendances
end
get 'today_attendance', to: 'attendances#today_attendance', as: 'today_attendance'
resource :calendar, only: [:today_attendance], controller: :attendances
post 'today_attendance', to: 'attendances#today_attendance', as: 'attendance'
嗨,我是新来的@Rails。
目前我有一个与日期相关的每日考勤表。在我的页面上显示“下一天”和“前一天”按钮,这些按钮将我今天的参加者带到其他日子。
我显示的当前URL是:http://localhost:3000/today_attendance 每当我点击按钮时,它就会让我http://localhost:3000/today_attendance?date=2019-03-29
问题:如何将此页面重定向回http://localhost:3000/today_attendance,以便导出到.xls可以读取/打印出不同的日期出席情况?
你可以在你的routes.rb
中添加你的路线的代码片段,并为你的html添加按钮的代码片段吗?
从我的第一个假设我相信你的按钮可能正在做一个GET
而不是POST
(来自uri中添加?date=2019-03-29
查询)。
另一个问题可能是您的按钮未指定为POST
方法。也许你忘了指定<button type="submit" >
。所以代码片段可能有助于进一步缩小问题范围:)