몇 분 안에 데이터베이스에 관리 패널 전체 창고 프로그램을 만듭니다.
어쨌든 데이터베이스를 처리하는 응용 프로그램을 만든 적이 있다면 쉽지 않을 것입니다.
너는 기술 창고를 선택해야 한다.그리고 데이터의 안전성, 속도와 정확성을 확보하기 위해 응용 프로그램의 체계 구조를 설계해야 한다.
다행히도, 이미 많은 프레임워크와 라이브러리가 전체 창고 응용 프로그램의 구축 블록으로 사용되고 있다.
그러나 코드를 작성하고 디버깅하는 데는 여전히 많은 시간이 필요하다.설령 당신이 경험이 풍부한 소프트웨어 엔지니어일지라도.
그래서 우리는 이러한 블록을 사용하여 데이터베이스에 응용 프로그램 코드를 생성하는 도구를 만들기로 결정했다.우리는 생성된 원본 코드를 즉시 사용할 수 있도록 하려고 한다.없으면 프로그램의 피드로 사용할 수 있습니다.
우리 해냈어!MeetIKODIX, 전체 스택 응용 프로그램에 사용되는 온라인 소스 코드 생성기
IKODIX는 데이터베이스에 액세스하여 코드를 생성할 필요가 없습니다.그것은 성명식 방법을 사용한다.
나는 IKODIX에 대한 지루하고 무미건조한 설명을 싫어한다. 작은 프로그램을 직접 만들자.50~60분을 넘지 않을 거예요.
사용 가능한 테스트 데이터베이스가 있더라도 Docker에서 MySQL 데이터베이스를 실행하여 이 과정을 가속화할 수 있습니다.
데이터베이스 실행
로컬 호스트에 설치Docker Desktop합니다.우리는 데이터베이스를 실행할 뿐만 아니라 생성된 응용 프로그램도 실행할 필요가 있다.
todo-db
파일을 만듭니다services:
db:
image: mysql:8.0.19
volumes:
- ./data:/var/lib/mysql
- ./init.sql:/init.sql
restart: always
environment:
- MYSQL_ROOT_PASSWORD=root_password
- MYSQL_DATABASE=todo
- MYSQL_USER=myuser
- MYSQL_PASSWORD=mypassword
expose:
- 3306
ports:
- 3306:3306
command: --init-file /init.sql
CREATE DATABASE IF NOT EXISTS todo;
USE todo;
DROP TABLE IF EXISTS `employee`;
CREATE TABLE `employee` (
`id` bigint NOT NULL AUTO_INCREMENT,
`full_name` varchar(1000) NOT NULL,
PRIMARY KEY (`id`)
);
DROP TABLE IF EXISTS `task_status`;
CREATE TABLE `task_status` (
`id` bigint NOT NULL AUTO_INCREMENT,
`status_name` varchar(200) NOT NULL,
PRIMARY KEY (`id`)
);
DROP TABLE IF EXISTS `task`;
CREATE TABLE `task` (
`id` bigint NOT NULL AUTO_INCREMENT,
`description` varchar(5000) NOT NULL,
`to_date` date DEFAULT NULL,
`assignee_id` bigint DEFAULT NULL,
`status_id` bigint NOT NULL,
PRIMARY KEY (`id`),
KEY `task_employee_id_fk` (`assignee_id`),
KEY `task_task_status_id_fk` (`status_id`),
CONSTRAINT `task_employee_id_fk` FOREIGN KEY (`assignee_id`) REFERENCES `employee` (`id`),
CONSTRAINT `task_task_status_id_fk` FOREIGN KEY (`status_id`) REFERENCES `task_status` (`id`)
);
docker-compose.yml
디렉토리 init.sql
data
현재, 컴퓨터에 Docker 용기와
todo-db
데이터베이스가 실행되고 있습니다.그것은 세 개의 표를 포함한다. docker-compose up -build
, todo
, employee
.오픈 IKODIX
테이블을 IKODIX로 설명하기 시작할 수 있습니다.Open IKODIX . 데이터 테이블로 이동하여 다음과 같이 열이 있는 테이블을 추가합니다.
직원 목록
task
표.기본적으로, 이것은 task_status
형식과 employee
이름이 있는 필수 Primary Key
열이 있습니다.이것은 우리에게 매우 좋다. 왜냐하면 실제 표 Long
에는 id
라는 메인 키열이 있기 때문이다.이것은 데이터베이스에 있는 모든 다른 테이블에 적용됩니다.employee
열을 id
유형으로 추가합니다.full_name
표.String
인 task_status
열을 추가합니다.status_name
표.String
인 task
열을 추가합니다.description
유형String
열.assignee_id
을 Long
로 추가합니다.status_id
인 Long
열을 추가합니다.일단 표 목록이 생기면 투영을 만들 수 있습니다.
투영은 링크 테이블의 데이터입니다.이 데이터는 전방 데이터 격자에 있는 단독 페이지에 표시됩니다.작성된 SQL 쿼리를 범주화하여 데이터베이스에서 일부 레코드를 선택할 수 있습니다.
예상하신 바와 같이, 저희 데이터베이스에는 작업 정보가 포함되어 있습니다.우리가 먼저 보아야 할 것은 모든 임무와 그들에게 분배된 직원들이다.
작업 투영을 작성합니다.
하나의 도표가 우리 앞에서 열릴 것입니다. 우리는 그 중에서 기록을 보기 위한 표를 추가해야 합니다.
우리는 먼저
to_date
표를 추가할 것이다.첫 번째 표는 그림의 루트 표입니다. 다른 표를 연결할 것입니다.이는 SQL 쿼리를 작성하는 방법과 매우 유사합니다.Date
표를 추가합시다.task
표의 task_status
열을 status_id
표의 task
열에 연결합니다.추가
id
표.task_status
표의 employee
열을 assignee_id
표의 task
열에 연결합니다.뷰 탭으로 이동합니다.여기서, 우리는 그림에서 표의 모든 열을
id
로 표시해야 한다. 우리는 앞에서 이 열을 보길 바란다.작업 테이블의
employee
및 Visible
열을 표시합니다.격자선 열 머리글에서 해당 열의 이름을 설정합니다.description
표의 to_date
열과 full_name
표의 employee
열을 볼 수 있도록 설정합니다.이름도 지어주고.데이터 격자에 표시될 열의 순서를 재정렬할 수 있습니다.
그런 다음 작성 탭으로 이동합니다.그림의 루트 테이블에 기록을 만들기 위해 이 옵션 카드에 폼을 설정합니다.즉, 이 기록은
status_name
표에서만 만들어질 것이다.task_status table
와 task
필드를 볼 수 있도록 표시하고 그 이름과 상응하는 필드 유형을 보여 드리겠습니다.그러나 이 필드를 제외하고 우리는 필드를 다른 표와 연결할 것이다.
description
와 to_date
.보이는 것으로 표시하고 이름을 지정한 다음 assignee_id
형식을 선택하십시오.보이는 것으로 표시하면 '컨트롤 설정 선택' 부분에서 사용자 정의 드롭다운 목록을 선택할 수 있습니다.링크 테이블에서 드롭다운 목록의 이름에 사용할 열을 지정할 수 있습니다.
status_id
선택Select
열, status_name
선택status_id
열.업데이트 탭으로 이동하여 작성 탭과 동일한 작업을 수행합니다.
우리는 이미 첫 번째 투영을 준비했다.이제 IKODIX는 모든 작업과 직원들에게 할당된 페이지를 포함하는 프로그램을 만들 수 있습니다.우리는 표를 입력해서 임무를 추가할 수 있다.
그러나 직원을 목록에 추가할 페이지와 입력 폼이 없습니다.이 밖에 작업 상태를 입력하는 페이지와 폼이 없습니다.
이것은 해결하기 쉽다.직원과 상태를 위한 두 개의 투영기를 만듭니다: 직원과 상태입니다.각 투영도에
full_name
와 assignee_id
를 각각 추가합니다.It would probably be preferable if you try to configure Data Grid and forms in the tabs View, Create and Update for each projection by yourself.
새 투영의 모든 설정을 완성하면 프로그램에 원본 코드를 생성할 수 있습니다.
소스 코드 생성
하지만 아직 완성하지 못한 것이 하나 더 있습니다. 데이터베이스 MySQL의 유형을 선택해야 합니다.시스템 설정 부분으로 넘어가서 우리가 원하는 데이터베이스 형식을 설정합니다.
소스 코드 다운로드 버튼을 클릭하여 애플리케이션의 이름을 "ToDo Admin"으로 지정합니다.
아카이브를 빈 디렉토리
employee
의 로컬 호스트에 저장합니다.이 디렉토리의 아카이브 파일의 압축을 풉니다.이제 우리는 프로그램을 시작할 수 있다.우리는 프로그램을 시작하기 위해 어떤 추가 물건도 설치할 필요가 없다.
task_status
파일을 열고 위에 쓴 내용을 자세히 읽으세요.매뉴얼에 따르면 두 가지 실행 프로그램 모드가 있습니다: 데모와 dev.
프레젠테이션은 언제든지 사용할 수 있는 프로그램을 구축하고 실행하는 것을 말한다.
Dev는 응용 프로그램 개발을 시작하는 시간입니다.전단의 열을 이 모드에서 다시 불러옵니다.
응용 프로그램을 프레젠테이션 모드로 실행해서 어떻게 상자를 열면 바로 사용할 수 있는지 봅시다.
시작하기 전에 데이터베이스에 대한 접근 권한을 설정해야 합니다.이것은
todo-app
파일에서 완성할 수 있습니다.변수README.txt
를 찾아서 다음 값을 jdbc로 바꿉니다.mysql://host.docker.internal:3306/todo.그리고 myuser로 사용자 이름 (.env
을 바꾸고 mypassword로 비밀번호 (dataSource.url
를 바꿉니다.파일을 저장합니다.어플리케이션 실행
두 개의 Docker 컨테이너는 응용 프로그램을 실행하는 모든 부분에 사용됩니다.그러나 우리가 해야 할 일은 실행 명령
dataSource.username
(또는 dataSource.password
for Windows) 이다.프로그램이 시작될 때까지 기다립니다.프로그램이 있는 용기가 백엔드에서 실행되기 때문에, 우리는 그것들을 추적해야 한다.이 두 명령
app.sh demo
과 app.cmd demo
을 서로 다른 터미널에서 실행합시다.모든 것이 시작되고 실행되는 것을 보면 주소http://localhost:3030가 있는 브라우저를 열 수 있습니다
시스템에 기본적으로 관리 권한이 있는 사용자가 있습니다.따라서 사용자 이름:administrator, 암호:administrator\u password를 사용하여 그의 계정으로 로그인합니다.
우리의 표에 기록이 없기 때문에, 우리는 신입 사원, 새로운 상태를 얻고, 임무를 창설하려고 시도합니다.
설령 이 프로그램이 상자를 열면 바로 사용할 수 있다 하더라도, 우리는 왼쪽 상단의 회사 이름을 바꾸어야 한다.
이를 위해 개발 모드에서 응용 프로그램을 실행합시다.명령
app.sh client-log
만 실행하면 됩니다.모든 Docker 컨테이너가 시작될 때까지 기다립니다.준비가 되었는지 확인하려면 다른 터미널에서 명령을 사용하십시오:
app.sh service-log
및 app.sh dev
.준비되면 주소http://localhost:3030가 있는 브라우저를 엽니다.
이제
app.sh client-log
디렉토리의 프런트엔드 코드에서 app.sh service-log
파일을 찾아 텍스트 "Company Name"을 "To Do Admin"으로 바꿉니다.변경 사항을 파일에 저장...그런 다음 브라우저에서 페이지를 봅니다.값은 자동으로 변경되어야 합니다.
전면에 있는 Docker 컨테이너를 제작하여 열을 다시 불러옵니다.
마지막 변경 사항이 완료되면 다시
WorkspacePage.tsx
을 실행한 다음 생산 용도로 응용 프로그램의 각 부분을 구축해야 합니다.분포는 to-do-admin-client/src/features/layout
및 app.sh demo
에서 확인할 수 있습니다.If you are going to extend the functionality of the application, first read the
README.md
files with a detailed description of the code structure in theto-do-admin-client
andto-do-admin-service
directories. This will help you to understand the code without difficulty.
나는 네가 너무 피곤하지 않고 IKODIX로 집을 짓는 것을 좋아하길 바란다.어쨌든, 그것은 자신이 이런 응용 프로그램을 개발하는 것보다 훨씬 빠르고 편안하다.
귀하의 의견이나 질문이 있으면 주저하지 않고 저희 포럼에 발표하십시오: IKODIX forum
또한 저희 트위터 계정의 새로운 IKODIX 버전을 주목해 주십시오.
감사합니다!!!
Reference
이 문제에 관하여(몇 분 안에 데이터베이스에 관리 패널 전체 창고 프로그램을 만듭니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ipselon/create-an-admin-panel-full-stack-app-for-your-database-in-minutes-1e65텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)