전체 글 161

2) 플라스크 api pythonanywhere MYSQL DB와 연결하기

이전글에서 말했듯 그냥 SQLite 를 디비서버 대신 사용하려 했었다. sqlite 파일이 파일루트에 생성된 것도 볼 수 있었는데 문제는 쓰기에서 파일의 변형으로 보아서인지 쓰기 동안 읽기도 불가능 한줄알았다. (알고 보니 그게 문제는 아니였다.) MYSQL DB로 옮겨보려고 한다. * sqlite에서 mysql로 옮기면서 디비를 만들때 디비설정에서 여러에러 발생한다. 1) sqlite에서 string에 size를 정해줄 필요가 없었는데 mysql에서는 정해 줘야한다. 2) default에 false 대신 0를 넣어줌 3) server_default에서는 스트링만 받는다. 4) 데이터 입력시 엑셀에 빈칸은 nan으로 되어 pandas (nan can not be used with MySQL 에러가 발생)..

1) 플라스크 api 서버 pythonanywhere에 배포

그냥 과정을 나열하면 복잡하다고 느낄 수 있기 때문에 4개의 섹션으로 나누었다. 1. 파일준비 2. 파이썬애니웨어에 파일설치 3. 파이썬애니웨어에 앱생성 4. 세팅(앱과 파일연결) 자신의 컴퓨터에서 해야할 부분 1. 파일준비 1) requirements.txt생성 2) 커밋한뒤 깃허브에 푸쉬하기 섹션 1 파일준비 끝 파이썬애니웨어에서 해야할 부분 2. 파일설치 1) 콘솔에 들어가 가상환경설치 (가상환경의 이름을 myvenv로 만듬) mkvirtualenv myvenv --python=/usr/bin/python3.8 2) 깃에서 클론하기 git clone https://github.com/깃이름/프로젝트이름.git 깃허브의 아이디와 비밀번호를 입력하라고 하는데 비밀번호 대신에 엑세스토큰을 붙여 넣는다. ..

[생각] 코딩에 대한 생각의 전환

프로그래머가 아닌 많은 일반인들이 프로그래밍을 배우고 있다. 심지어 5살짜리 애기도 코딩에 대해 배운다고 하는 말을 듣고 굳이 그렇게 일찍 배울 필요가 있나 싶은 생각도 들었지만 코딩이 기초학문이 되어가고 있는 것을 느낄 수 있었다. 심지어 아이들의 교육을 걱정하는 부모님까지 코딩에 대해 기본은 알고 싶다는 이야기도 들었다. 문득 코딩이 글쓰는 것과 비슷한 것 같다는 생각이 들었다. 글 쓰는 것은 기본적으로 모든 사람이 배우지 않는가. 그런데 코딩도 비슷한 것 같다는 것이다. 나는 직업이 프로그래머가 아니지만 '간단한 코드를 만든다.' 반복되는 작업을 자동으로 하는 10줄 정도의 간단한 코드이다. 다른 직원에게 설명해주고 싶지만 배우려는 의지도 없어보인다. 그들의 생각은 '너는 프로그래머 였으니까...'..

[호주 워홀이야기 3] 스카브로 바닷가 옆에 있는 호텔에서 일하기

아무런 의욕도 없고 머리속에 호주 생각 밖에 나지 않을때가 있다. 이럴때 한번 호주에 대해 기억하는겸 글을 써본다. 지금 생각해보면 워킹홀리데이때 만큼 자유로워본적이 없었던 것 같다. 그렇기 때문에 그때가 너무 그리운것 아닌가 싶다. 학교에 소속된 것도 아니고. 회사에 소속된 것도 아니고 주변친구들이나 부모님의 눈치를 보며 내가 해야하는 행동을 정했던게 아니라 정말로 내가 하고 싶은, 내 마음대로 내 삶을 정했다. 호주에 오고나서 일을 구해야 했다. 초반에 이것 저것 사서 쓰다보니 돈이 많이 들어갔다. 돈을 아끼려고 배고플때마다 가까운 맥도날드에가서 $2짜리 맥더블을 먹었다. (정말로 퍼스에서 맥더블만 먹은 것 같다. 그런데 맛있다....) 그리고 일을 구해야 했는데 이왕 호주에 온거 한국인 밑에서 일을..

Life 2021.08.14

[에디터 잘써먹고 스타일 잘해보기] 플러터 위젯 이해하기

플러터 위젯 이해하기 여기서는 플러터를 시작하는 많은 사람들이 중요하지만 놓칠 수 있는 부분을 설명하려고 한다. 플러터는 위젯으로 구성되어 있다. 그렇기 때문에 위젯을 이해해야 쉽게 웹사이트 혹은 어플리케이션을 만들 수 있다. HTML의 구성요소들은 인터넷에 찾으면 쉽게 찾을 수 있다. 그리고 그걸 어떻게 원하는데로 스타일을 할지도 쉽게 찾을 수 있다. 하지만 플러터는 신상프레임워크이기 때문에 우리가 찾기가 어려울 수도 있다. 그런데 플러터는 텍스트에디터의 도움을 아주 잘 받았다. 텍스트에디터를 잘 이용하면 위젯의 속성명과 거기에 들어가야하는 값이 무엇인지 알 수 있다. 이게 아주 중요하다. 개발의 이걸 알고 개발을 하고 모르고 개발을 하냐에 따라서 개발의 속도가 크게 차이가 난다. 특히나 HTML에 익..

플러터 listView와 sliverList 으로 리스트 그리기

Front는 과연 무엇일까 하는 생각이 들었다. 심플하게 말하자면 데이터를 보기 좋게 뿌려주는 것이다. 그것을 UI라고 한다. 그 중에 가장 기본이 되는 것은 어떻게 반복되는 형식을 front에 뿌려주는 것인가 일 것이다. flutter의 sliverList와 ListView가 기본적으로 많이 사용되는 리스트 위젯일 것이다. 이들은 index는 0부터 시작해서 정해진 아이템(자식)의 숫자만큼 반복할 것이다. 아래를 보면 listview.build메서드의 프로퍼티에 itemCount를 전달한다. 그러면 build메서드는 이렇게 전달받은 카운트 만큼 반복을 하며 itembuilder에 넣은 함수에 index를 전달할 것이다. sliverList역시 딜리게이션에 context와 index를 전달 하는 함수를 ..

라오스 시노팜 백신 1차 후기

라오스에서 시노팜 백신을 맞았다. 아스트라제네카도 있지만 라오스에서 대다수가 접종하는 시노팜을 맞을 거라고는 생각도 못했다. 원래 계획은 기다리고 기다려서 한국에서 화이자를 맞자는게 계획이였다. 하지만 라오스에서 일도 해야하고 회사에서 백신휴가를 줘서 빨리 맞기로 결정했다. 라오스에는 현재 화이자, 시노팜, 아스트라제네카를 접종할 수 있으며 화이자의 경우 60세 이상 혹은 지병이 있는 경우에 접종이 가능하다. (지병의 경우 미리예약 후 접종해야한다. 특별히 검사하는거 같지는 않으니... 가능하면 화이자가 좋을 듯) 백신을 맞기 위해 Phadsard xiengda 에 7시에 도착하니 꽤 많은 사람이 이미 줄을 서고 있었다. 안되겠가 싶어ITEC으로 옮겨보니 더 많은 인파가 보여 있었다. 마치 콘서트장에 온..

Life 2021.06.21

[플러터] 플러터 애드몹 달기

플러터에서 애드몹을 달때 사용하던 패키지가 기존에 firebase_admob에서 pub.dev/packages/google_mobile_ads 이걸로 바뀌었다. 광고 다는 법은 공식 사이트에 나온 그대로 따라하면 된다. 설명이 쉽게 나와있다. 기존의 애드몹은 자동으로 맨 밑 바닥에 광고를 붙여줬는데 새로운 애드몹 패키지에선 위젯으로 만들어 자신이 원하는 위치에 붙일 수 있다. 그런데 저 광고 패키지를 설치 할때 에러 때문에 고생했는데 원인은 gradle을 업데이트 해야했다 . 1. gradle\wrapper\gradle-wraper.properties 여기에 들어가 아래의 배포버전을 넣는다. distributionUrl=https\://services.gradle.org/distributions/grad..