내일배움단 11일메이킹챌린지 9일차

·2021년 7월 27일
0

1차 점검

핵심적인 기본 기능 구현은 거의 마무리단계인 것 같다.
CSS로 보기 좋게 꾸미는 건 아직 부족하지만, 우선 기능적으로 놓친 건 없는지 1차 점검을 시작.

테스트용 .html 파일들과 app.py 내 테스트용 코드들 정리, 삭제
문구 수정 및 계좌번호 등에 실제 정보 넣기

택배발송요청일 input type="date" 에 날짜 제한하기

오늘이나 과거 날짜로는 설정할 수 없고, 아무리 빨라도 내일 날짜로 택배발송을 신청해야하므로, 날짜 제한 걸기

<input id='datedata' type="date" min="2021-07-28" max="2099-12-31">

위와 같이 min 이라는 속성을 통해 최소날짜를 제한할 수 있으나, 우리가 원하는 건 특정한 날짜가 아니라 지금 시점에서 내일 날짜부터 고를 수 있게 제한하는 것.

서버측 python을 이용하거나 javascript코드를 이용해서 내일 날짜를 계산하고 그 값을 min 속성에 넣어줘야한다.

python은 이거 하나를 위해 date와 관련한 패키지를 또 다운받아 설치해야하므로 javascript로 우선 구현해보기로.


function setOrderDate(){
    let targetdate = new Date();  // 현재 날짜시각정보 date객체로 가져오기
    Date(targetdate.setDate(targetdate.getDate() + 1)); // date객체값을 내일로 변경 setting하기

    let year = targetdate.getFullYear(); // 년도
    let month = targetdate.getMonth()+1;  // 월 
	//getMonth메소드는 1월이 0으로, 2월이 1로, ~12월이 11로 나오기 때문에 +1 해준다
    let date = targetdate.getDate();  // 날짜
  
  	//input태그를 id값으로 가져온 뒤 min속성을 세팅한다
    document.getElementById('datedata').setAttribute('min', year+'-'+month+'-'+date);
 };
<input id='datedata' type="date">

참고:
https://hianna.tistory.com/325

이렇게 했는데 제대로 작동이 되지 않아서, 왜 그런가했더니 2021-07-28이라고 입력이 되어야하는데, javascript코드가 입력하는 값은 2021-7-28 이었다.

별로 우아하다는 생각이 들진 않았지만 중간에다 아래와 같은 코드를 추가해주었다.

if(month < 10){
  month = "0"+month
}
if(date < 10){
  date = "0"+date
}

git revert

master에 예전 master에서 딴 브랜치로 작업한 내용이 merge되면서 최근 작업한 내용들이 날아갔다. 만들어놓은 function하나와 html파일 하나가 통째로 날아가고 다른 자잘한 변경사항들도. 근데 그 덕분에 말로만 듣고 한번도 실제로 사용해본 적이 없었던 revert기능을 써볼 수 있게 됐고, sourcetree로 어느 커밋에서 어떤 변경사항이 생겼는지도 훨씬 열심히 찾아볼 수 있는 기회가 됐다.
협업하는 과정에선 늘 생길 수 있는 일이고, 나를 포함한 팀원 모두가 깃을 실제 협업에 이용해본 경험이 없어서 협업하는 프로젝트를 통해 실전으로 배울 수 있는 정말 좋은 기회가 됐다. 원격remote 레파지토리에 push된 이후에는 reset 명령어로는 되돌릴 수 없고 revert를 써야한다고 하는데, 기본적으로는
git revert [커밋아이디] 입력을 통해 해당 commit을 취소하고 그 commit을 하기 전 상태로 돌아간다. (그 전 상태로 변경하는 commit이 진행된다)
일반적인 commit은 이렇게 해서 하나씩 하나씩 취소하면서 돌아가면 되는데,
merge가 된 경우에는 이를 되돌리는 것이 좀 더 까다롭다. merge하면서 충돌comflict를 해결한 사항 등이 있어서 그런 것 같다.
git revert [커밋아이디] -m 1
위와 같이 명령어 뒤에 -m 같은 옵션을 통해 merge된 커밋 중 어느 쪽으로 되돌릴 건지와 같은 추가적인 정보를 주어야 git이 명령을 수행하는데, 아직도 어려운 부분이다.
참고:
http://ohyecloudy.com/pnotes/archives/git-revert-merge-commit/

profile
백엔드 개발자. 공동의 목표를 함께 이해한 상태에서 솔직하게 소통하며 일하는 게 가장 즐겁고 효율적이라고 믿는 사람.

0개의 댓글