[Rails] 단순-callendar 달력에서 직접 날짜를 받습니다.

3119 단어 Rails

개시하다


이 보도는 신입 엔지니어의 첫걸음이다AdventCalendar 2020 11일차 보도
Rails에서 Simple-callender를 가져올 때 겪는 몇 가지 문제가 기사로 나옵니다.
나는 개인적으로 이번 보도와 같은 상황에 빠지지 않을 것이라고 생각한다.날짜란이 있으면 충분하니까.
그리고,createat에서 날짜 정보를 얻는 방법도 있지만 이번에는 (날짜별 등록도 가능) 방법을 사용하고 싶지 않다.
내 경우 계산된 합계를 저장한 테이블이 없지만 합계를 달력에 출력하기 때문에 날짜 정보가 없는 단순한 디지털 링크만 할 수 있다.따라서 달력에서 날짜 정보를 직접 얻을 필요가 있다.

개발 환경


IDE:Cloud9
Ruby:2.6.3
Rails:5.2.4
simple-calendar:2.4.1

딱한 사정


달력에 표시된 총 칼로리 링크를 클릭하면 당일 페이지의 상세한 정보를 볼 수 있습니다.그러나 총칼로리는 합계치만 표시하기 때문에 총칼로리가 속한 표가 없어 날짜 정보를 얻을 수 없다.
하고 싶은 일로view의 정보(날짜)를 controller에 전달하고 싶습니다.


해결까지의 노정


우선 달력의view는 다음과 같다.(<%=date%>은(는) 확인에만 사용됩니다.
view
総カロリー:<%= link_to sum, users_my_page_show_path %> kcal
<%= date %>
달력에 <%=date%>를 출력하면 칼로리 뒤에 날짜를 표시합니다.즉 매개 변수로 주웠을 뿐 날짜에 대한 정보가 있었다는 것이다.

지금 이러면 물론 어떤 링크도usersmy_page_그냥 path로 날아가는 건 의미가 없어.커서를 어느 링크에 놓든지 다음과 같은 내용만 표시됩니다.

따라서 링크의 매개 변수에 추가(date)를 시도해 보십시오.그래서 커서가 맞는 날짜 정보를 url에 확인했습니다!
view
総カロリー:<%= link_to sum, users_my_page_show_path(date) %> kcal
<%= date %>

이 상태에서 디버깅 컨트롤러 옆에 있는 후 링크를 클릭하여 파라미터가 있는지 확인합니다.
params를 입력하면 탑승 파라미터를 볼 수 있습니다.format에 날짜 정보가 있는 것 같습니다.

결과적으로 컨트롤러는 다음과 같은 정의를 통해 달력에서 날짜를 직접 얻을 수 있다.그리고 표시할 상세한 정보에달력 날짜에 기반한 내용을 표시할 수 있습니다.
controller
def my_page_show
  @day_params = params[:format]
end

참고 문장


총결산


참고 보도는 참고가 될 수 있다.

좋은 웹페이지 즐겨찾기