[ 프로젝트 BEP ] 최종장 - 엔지니어로서의 마인드셋에 대해 : 우수한 엔지니어는 누구이고, 가져야할 마인드 셋에 대해

이미지
  들어가면서 이제 2025년도 얼마 남지 않은듯 하다.  조금 길어질 수도 있기 때문에  실제로 업로드 하는 것은 새해 이후가 될 가능성도 있으나  올해는 이 글로 마무리 해보려고 한다. 이제 이 최종장을 끝으로 이 프로젝트를 다소 마무리 할 수 있을 것 같다. 물론 전체적으로 글 자체가 부족한 부분이 여려 곳 보이지만,  이는 천천히 개선하기로 하고 일단 마무리를 잘 지어보려고 한다. 이 프로젝트의 목표는 어디까지나 주니어 엔지니어(넓은 범위로서)에게  도움이 될 수 있는 부분을 정리해 놓은 것 이며, 이를 전달하는 것에 주력을 했다. 정확히는 그 사이에 몇 번이나 직장은 바뀌었지만,  내가 다니고 있는 회사에서 작게는 멘터,  크게는 주니어 교육에 활용하기 위한 초안이였다. 들어가기 앞서서 먼저 개발자는 무엇인가에서 부터 시작해서,  수학은 필요한가, 그리고 학위에 대한 이야기를 나누어보았고, 그 다음으로 컴퓨터가 무엇인가에 대해서는,  가장 첫 장인 컴퓨터 개론에서 메모리 손실과 함께 설명하였다. 다음으로는 개발 방법론과 시스템 설계,  그리고 프로그래밍 언어에 대한 이야기로 간단하고 이론적인 이야기를 하였다. 눈치가 빠른 사람은 알 수 있듯이,  현실에서 가질 수 있는 몇 가지 의문으로 시작해서  컴퓨터라는 하드웨어 부터 시작해서,  프로젝트(개발 방법론), 설계, 프로그래밍 언어 순으로  일부러 점점 컴퓨터 세계로 들어가도록 구성을 해 놓았다. 여기서 한 걸음 더 나아가자면, 알고리즘이 들어갈 수는 있겠으나  어디까지나 가볍게 전달하는대에 목적이 있기도 하고,  개인적으로는 당장은 크게 중요하지 않은 부분이 라고 생각 했기 때문이다. 먼저 이 부분에 대해서 좀 더 자세히 이야기해보도록 하자. 시작 부터 모든 지식을 쌓을 수는 없다 이는 개발 영역에서만 해당되는 이야기는 아니지만,  모든 것에는...

[ Django, Python ] mozilla 튜토리얼 예제로 살펴보는 Django 분석 ③ - 1 : Django 관리자 사이트


관리자 애플리케이션에 Models 등록 하기



catalog 앱에 admin.py에 빨간색 박스와 같이
작성한 Model들을 추가해주자. 

・Superuser 만들기


관리자 사이트에 로그인 하기 위해서는
권한을 가진 유저를 생성할 필요가 있다.

이 관리자 유저를 manage.py를 이용해 
만들 수 있다.


1
python manage.py createsuperuser
cs

관리자 유저를 생성했다면
서버를 실행해 확인해보자.


1
python manage.py runserver
cs

방금 생성한 Superuser 계정의 
아이디와 비밀번호를 입력해 관리자 페이지로 들어가면


위와 같은 화면이 보일 것이다.

화면과 같이 이전에 정의하고 마이그레이션 했던
Model들이 화면에 표시된다.

Books 레코드를 입력하기 전에 
우선 작가(Authors)와 장르(Genres), 
그리고 언어(Languages)를 먼저 추가한 후에

Books 레코드를 입력해보자.


나는 5개 정도 추가하였다.

여기서 책의 이름이 표시되는 이유는


Book Model에서 __str__() 메소드를 
위의 같이 책 이름(title)이 반환 되도록 했기 때문이다.

또한 책 이름을 누르면 수정 페이지로 들어가면


위의 빨간색 박스와 같이 VIEW ON SITE 버튼이 보이는데 
이는 Model에서 


위의 사진과 같이 get_absolute_url() 메소드를 정의했기 때문이다.

이제 데이터를 등록하지 않은 Model은 
BookInstance Model 뿐이기 때문에 
BookInstance도 데이터를 등록해보자.

BookInstance를 나중에 데이터를 등록하는 이유는


BookInstance의 book 필드를 외래키(ForeignKey)로 지정했기 때문이다. 

물론 Book Model로 생성된 Book 객체가 
데이터가 없더라도
옵션에서 삭제되면 
Null을 데이터로 등록하는 on_delete=models.SET_NULL
데이터에 null값을 허용하는 null=True
옵션이 있기는 하지만 말이다.

어쨋든 를 등록 할때
대여 가능(Available), 대여 중(On loan), 대여 불가능(not Available
으로 여러가지 레코드를 입력해보자.


나는 대충 4개 정도 데이터를 넣었다.



이 블로그의 인기 게시물

[ Web ] 서버 사이드(Sever Side) ? 클라이언트 사이드(Client Side)? 1 [서론, 클라이언트 사이드(Client Side)]

[ Web ] 웹 애플리케이션 아키텍처 (Web Application Architecture)

[ Web ] 웹 애플리케이션 서버 아키텍처의 정의 및 유형 ( Define and Types of Web Application Server Architecture )