전체 글369 스파르타코딩클럽 Django 기초반 3주차 과제 3주차 과제를 하는데 이거 처음해본 사람들은 만들 수 있을지 의문이 들었다. 댓글 목록 조회, 저장, 삭제 기능 구현이었는데 글 id, 댓글 id 모두 id 변수 하나로 지정해놔서 초보자들에게 고생 포인트가 되지 않았을까 싶다. Django 팀에서 현재 ORM을 도입하려고 활발히 연구중이다. Django에서 ORM을 사용해보니 확실히 편한 부분도 있었지만 우리 제품처럼 여러 개의 테이블을 복잡하게 조인해서 조회하는 부분은 어떻게 구현하는지 보고싶어졌다. pycharm 오늘도 역시나 pycharm의 기능이 놀랍다. redirect, render 등을 사용하면 해당 template으로 이동하는 링크를 만들어준다.👍 그 외에도 vs, vsc에서 extension으로 제공하는 많은 기능들도 기본으로 제공한.. 2021. 7. 3. C#7 AND .NET CORE 2.X BLUEPRINT 신입 개발자에게 추천한 이것이 C#이다를 미처 다 읽기도 전에 새로운 책이 회사에 도착했다. 팀에서 Entity Framework를 도입하려고 연구가 이루어지고 있기 때문이다. 이 책은 9개의 예제를 통해 .NET 프레임워크의 기능들을 소개하는 것 같다. 우리에게 지금 필요한 부분인 OOP와 EF에 대해 집중적으로 볼 예정이다. 개인적으로 읽고 싶었던 책들이 수두룩 빽빽이었는데… (클린코드, TDD, 팀 매니징 등등..) 이것이 C#이다도 github에 읽은 부분에서 몰랐던 부분이나 헷갈렸던 부분만 정리를 하다보니 블로그에 올리기엔 적절하지는 않은 것 같다.😅 이 책도 여유가 된다면 정리를 하고 아니면 개인 기록으로 남겨야겠다. https://www.aladin.co.kr/shop/wproduct.asp.. 2021. 7. 3. [javascript] jquery ajax, Blob을 이용한 file download 전에 회사에서 csv, excel export 기능을 개발한 적이 있다. 이번 회사에서도 새로 개발하려니 기록이 없어서 꽤 고생했다. 이번에는 잘 기록해두어야지.😊 먼저, XmlHttpRequest의 response Type을 Blob(Binary type)으로 설정한다. $.ajax({ url: url, data: parameters, type: 'POST', cache: false, xhrFields: { responseType: "blob", }, }) 서버에서는 다음과 같이 response를 해준다. 한글이 포함된 파일명도 잘 보이게 하도록 파일명을 URL encoding했다. Content-Disposition: attachment; filename=%ed%95%9c%ea%b8%80_file_d.. 2021. 7. 1. [Javascript] Object Clone하기(shallow copy/deep copy) shallow copy: {...obj}, Object.assign({}, obj) deep copy: JSON.parse(JSON.stringify(obj)) let obj = { a: 1, b: 2, c: { level: 1 } }; // Spread Operator를 사용하는 방법 let newObject1 = { ...obj }; // Object.assign을 사용하는 방법 let newObject2 = Object.assign({}, obj); // JSON.stringify 후 JSON.parse하는 방법(조잡하다...) let newObject3 = JSON.parse(JSON.stringify(obj)); // 모두 같다 console.log(newObject1.c.level); // 1.. 2021. 6. 30. [C#] DataRow Clone하기 DataTable을 사용하다 보면 DataRow를 해야 할 때가 있다. var firstRow = dataTable.Rows[0]; Table.Rows.Add(firstRow); 이렇게 사용하면 아래 에러가 발생한다. This row already belongs to this table. dataTable의 ImportRow() Method를 이용하면 된다. var firstRow = dataTable.Rows[0]; dataTable.ImportRow(firstRow); .Net fiddle에서 확인 가능하다. https://dotnetfiddle.net/W9h7bj 2021. 6. 29. 스파르타코딩클럽 Django 기초반 2주차 2주차 강의를 모두 수강했다. 수업에서 나오는 개념보다는 느낀점들을 정리하면서 강의를 들었다. Django 강의를 듣다보니 Django는 기존 MVC와 다르다고 배웠던 기억이 났다. 기존 MVC와 다르게 View대신 장고에서 Template을 쓰고, 기존 MVC의 Controller는 장고의 View다. MVC면 MVC로 할 것이지 왜 MTV로 했는지 킹받는다. ORM을 구현하는 부분을 보고싶었는데 프레임워크에 내장된 기능을 이용하는 것 같았다.😂 코드를 수정하고 다시 컴파일 하지 않아도 확인할 수 있다! 이것이 인터프리터 언어의 힘인가! python을 자주 사용하지 않아서 자꾸 ; 을 찍는 실수를 한다. 아무리 생각해도 elif 안 예쁘다. else if 로 바꿔주면 안 되나? Pycharm SQL과 .. 2021. 6. 27. 스파르타코딩클럽 Django 기초반 preview 나의 첫 프로젝트는 대학교 4학년 때 졸업 프로젝트로 진행한 Django 프로젝트였다. 스타트업에서 원하는 기능을 구현해주고 그것을 졸업작품으로 발표하는 프로젝트였다. 기업에게는 무료 (저퀄리티)외주 개발을 해주고, 학생은 회사 프로젝트를 경험하는 나름(?) 괜찮은 아이디어였다. 그때 당시 팀원 모두 학교에서 Django는 물론 파이썬도 배워본 적 없었다. 한 학기 동안 진행한 프로젝트였지만 3개월 내내 Django를 공부했고 매주 진도를 확인하던 교수님은 구박을 하셨다. 니들 나중에 회사에서도 공부한다고 그러면 회사 짤린다! 🤬🤬 결국 팀원 4명 중 2명은 포기를 선언하고 나와 다른 팀원은 호텔을 잡아서 밤샘코딩에 들어갔다. 결과는 처참했다. 겨우 졸업은 할 수 있는 정도의 학점을 받았다. 근데 나중에.. 2021. 6. 26. DOM Element의 ID는 전역 변수로 사용할 수 있다. DOM element의 id는 전역 변수로써 사용할 수 있다. 아무리 생각해도 글로 설명하기 어렵다. 아래 예시가 이해하기 쉬울 것이다. HTML JS test.innerText = "this is text"; https://jsfiddle.net/jjhan/u2bqL4dw/1/ 오늘 element id와 전역함수의 이름이 공교롭게도 같아서 클라이언트단에서 에러가 발생했다. Uncaught ReferenceError: something is not defined 일반적으로 DOM element의 id는 prefix(btn, select 등등)를 붙이기 때문에 충돌이 발생할 경우는 없지만 이 사실을 몰랐더라면 꽤나 헤맬 수 있었던 이슈다. 운이 좋게 이직 전에 이 사실을 알게 되어서 쉽게 찾아서 고칠 수 .. 2021. 6. 25. [MS-SQL] 임시 테이블(#, ##) MS SQL Server에서 임시 테이블을 만들기 위해서는 #과 ##을 이용하면 된다. #을 붙이면 현재 세션에서만 사용 가능하다. ##을 붙이면 다른 connection에서도 사용 가능하다(global temporary table). SQL Server는 자동으로 임시 생성했던 테이블을 Connection이 close될 때 제거해준다. 하지만 개인적으로 DROP TABLE로 꼭 지워준다.😄 CREATE TABLE #TEMP ( Memo VARCHAR(MAX) ); CREATE TABLE #GLOBAL_TEMP ( Memo VARCHAR(MAX) ); 2021. 6. 24. 이전 1 ··· 33 34 35 36 37 38 39 ··· 41 다음