te-touのブログ

音楽制作・車・プログラミング・旅行・その他考えてる事など、備忘録的なことも含めて個人的なページです。

ウェブアプリを作る。5(Djangoサーバー起動)

 

前回までで作成したアプリの雛形を起動します。

www.te-tou.tokyo

 コマンドは、

 $ ./manage.py runserver

これを打つと、ターミナル画面が以下のようになります。

f:id:te-tou:20200206211529p:plain

Dhango server起動

かなり見づらいですが、赤く囲った下記アドレスにブラウザからアクセスすると。

f:id:te-tou:20200206211905p:plain

Django起動

ロケットが打ちあがってる画面が出てきます。

起動成功です。

 

大体どこの何を見ても、runserverと書いてあります。

結構省略されて、初心者には分かりづらことは「どこのディレクトリで起動コマンドを打つか」です。普段使ってないとアクティベートと共に、どこでコマンド打つかよくわからなくなります。

 

なので、さらっとツリーで見ると。

project

    ┗ scoring-sheet

        ┗ scoringsheet <= ここでrunserver

            ┗ scoringsheet 

            ┗ shinsa          

runserverコマンドを打つディレクトリの中に「./manage.py」というファイルがあり、それを呼ぶことで、ローカルサーバーが起動するみたいです。

f:id:te-tou:20200206213534p:plain

./manage.py runserver


以上、サーバー起動でした。

 

 

ホンダビートPP1 iPhone11で車載映像撮影

 

タイトルの通りですが、iPhone11で車載動画撮影しました。 


ホンダビートPP1 夜ドライブ/Driving with HONDA BEAT at midnight.

スマホの固定方法がなかなか難しくて模索中です。

道路の状態が悪いと、すぐにずれてしまいます。

 

ちなみに、カーナビにしているのは第6世代の無印iPad。 

www.te-tou.tokyo

ミラーはドライブレコーダー一体型の物になっています。

どれも同じような物だとは思いますが、取り付けが簡単でよかったです。

バックカメラもついていますが、電源はモニターと共にシガーソケットから取れて

配線もシンプルです。ちなみに前後カメラ同時録画できます。


【昼】ホンダビートとルームミラー型ドライブレコーダー①フロント

SDカードの劣化だけ気をつければ、いざという時安心です。

せっかくならGPS付きにすれば良かったかなとは思いましたが、まあいっか。と。

 

ただ、画像はそれなりなので車載動画として楽しみたい場合は物足りないです。

なので、iPhone11での撮影を試みています。

撮り方は改善の余地全然ありですが、今のところはよく撮れているかなと思います。

音は実際より少しくぐもって聴こえるような気がします。

 

 

 

アルファロメオ ペーパークラフト3(製作中)

 

ペーパークラフト アルファロメオ ジュリア1300GTA

f:id:te-tou:20200125024205j:plain

www.te-tou.tokyo

今回はホイール部分を組み立てています。

f:id:te-tou:20200204005456j:plain

こんな部品や

f:id:te-tou:20200204005610j:plain

円の中を切り取る部品など、

f:id:te-tou:20200204005715j:plain

強烈に細かい切り取りを要求されます。

上の写真でホイール1つ分。これを貼り合わせると、

f:id:te-tou:20200204005753j:plain

こうなります。

ノリがはみ出していて汚らしいので、乾いたら余分なノリは切り取るなどしてきれいにしようかなと。

 

これでも説明書をよく見て作ったのですが、出来てみたら裏表逆に張り合わせてしまった個所がありました。

これはかなり手痛いミスになりましたが、乾くともう後戻りできないので潔く諦めます。初心者だし。

 

ホイール一個作る(切り取る)のに約一時間。煩悩があると気が散ってできません。

本当に無の境地が必要です。

これを一個作ったところで力尽きました。

f:id:te-tou:20200204010152j:plain

これが仕事なら気合が入るのですが、気持ち次第で集中力が切れるところが趣味の領域です。

 

あと3つ。。。

www.facebook.com

 

 

ホンダビート・経年劣化したメーターユニット

 

そろそろ車検が近いなと車検証を見たら、ビートを購入してから15年が経ちました。

この15年間は様々なトラブルが起こり、まさに愛と憎しみの日々と思わざるを得ません。

 

メーターユニットもその一つです。

f:id:te-tou:20200202162805j:plain

経年劣化・ビートメーターユニット

 

とにかくビートは湿気に弱く、車内結構サビが発生します。

メーターについては、ネジがアースの役割もしているらしいです。そのアースを担っているネジが錆びると電流が正しく流れず以下のような不具合が起こるようです。

      1. メーター不動
      2. メータータコ踊り
      3. メーター動きが鈍い
      4. タコメーター回転数不一致 など

私のビートの場合は3番と4番です。

7年前くらいに、ネジ交換と電球交換をしましたがまた錆びてしまいました。

f:id:te-tou:20200202161601j:plain

ホンダビート・メーター類のネジの錆び

写真はアイドリング時の状態ですが、多分アイドリングで1800回転もしてないはずなので表示が狂ってます。

ついでに言えば、水温計のとこの電球も切れています。

 

この辺りは、ビートの正しい経年劣化の姿かと思います。

ちゃんとしたガレージに入れていればそんなことはないかもしれませんが、なんせ弱点が多い車なので車検に向けてなんとかしようかと思います。

いつまで乗れるか分かりませんが。

 

Djangoで始めによくわからないところ。(アプリ作成時のディレクトリ構造)

 

 前回までは、アプリの雛形となるディレクトリを作って行きました。

www.te-tou.tokyo

手順がいろいろあってややこしいので、一回まとめます。

前回までの手順

プロジェクトフォルダ①作成
  • プロジェクトを作成したいフォルダの中に移動
  • virtualenvを実行し、プロジェクトフォルダ①を作成
$ virtualenv -p python3 プロジェクト名①

projectを作成したいフォルダ

    ┗ プロジェクトフォルダ① <= これができる

プロジェクトをアクティベートする
  • プロジェクトフォルダ①をアクティベートする
 $ source scoring-sheet/bin/activate
Djangoをインストールする
  • プロジェクトフォルダ①にDjangoをインストール
$ pip install django
↑ これでエラーになったら、下記コマンドでインストール
 $ pip3 install django

projectを作成したいフォルダ

    ┗ プロジェクトフォルダ① <= activateして、Djangoをインストール

プロジェクトフォルダ②を作成

Djangoをインストールしたフォルダ内(プロジェクトフォルダ①)にプロジェクトフォルダ②を作成 

 $ cd プロジェクトフォルダ①
$ django-admin startproject プロジェクト名②

 projectを作成したいフォルダ

    ┗ プロジェクトフォルダ① <= activateして、Djangoをインストール

             ┗ プロジェクトフォルダ② <= このフォルダが作成される

アプリケーション作成

プロジェクト②フォルダ内に、アプリケーション作成

$ cd プロジェクト名② 
$ ./manage.py startapp アプリ名

 projectを作成したいフォルダ

    ┗ プロジェクトフォルダ① <= activateして、Djangoをインストール

             ┗ プロジェクトフォルダ② 

                      ┗ アプリフォルダ <= このフォルダが作成される

作業終了時はディアクティベート
  $ deactivate

  アプリの雛形フォルダを作成するところまで、羅列しました。

 

絵面で考える

頭の中を整理するために、ノートを書きました。

f:id:te-tou:20200201161906p:plain

Django アプリを作るときのディレクトリ

なんでこんなに階層深く作成するのかよく分かりませんが、間違っていない場合は各々何かしらの役割があるはずです。

PGをいじりながら理解が出来るかもしれません。

なので、ここはこんなもの程度に考えておきます。

 

 

ウェブアプリを作る。4(Djangoプロジェクト作成2)

 

前回の続きです。

www.te-tou.tokyo

activateする 

とりあえず、前回作った"scoring-sheet"をアクティベート(起動)します。

     $ cd project 
     $ source scoring-sheet/bin/activate

いつもどこのディレクトリでアクティベートするのかわからなくなるので、ノートを書きました。

f:id:te-tou:20200130225158p:plain

Django アクティベートするディレクトリ
プロジェクトをつくる

scoring-sheetフォルダ内に移動して、下記のコマンドを打ちます。

 $ django-admin startproject scoring-sheet

エラーが出ました。

 CommandError: 'scoring-sheet' is not a valid project name. Please make sure the name is a valid identifier.

 ハイフンが入ってると、命名規約に引っかかるみたいです。

なので、

 $ django-admin startproject scoringsheet

 と打ち直したら、できました。

project

    ┗ scoring-sheet

        ┗ scoringsheet <= 今回新しく作成されたフォルダです。

f:id:te-tou:20200130232851p:plain

Django startproject

このような感じです。

 アプリケーション作成

プロジェクトフォルダに移動します。

project

    ┗ scoring-sheet

        ┗ scoringsheet <= ここです。

 

今回は、昇段審査で使用する採点表を作りたいのでアプリ名を「shinsa」とします。

下記のコマンドを打って、アプリフォルダを作成します。

 $ ./manage.py startapp shinsa

 このようになります。

project

    ┗ scoring-sheet

        ┗ scoringsheet

            ┗ scoringsheet <= このフォルダと

            ┗  shinsa          <= このアプリフォルダができます。

f:id:te-tou:20200131000518p:plain

startapp shinsa

こんな感じになります。

アプリをDjangoに登録する

以下のディレクトリ内の「settings.py」にshinsaアプリがあることを認知させるため、記入します。

project

    ┗ scoring-sheet

        ┗ scoringsheet

            ┗ scoringsheet 

                 ┗ settings.py <= このファイルに記入。

            ┗ shinsa          

 

内容は以下の通りです。

f:id:te-tou:20200131002437p:plain

Djangoにアプリを登録
ここで一旦終了

終わらせるときは、deactivate。

 

ここらへんで混乱します

何やら、いろいろフォルダを作成して混乱してきたので、次回ちょっとまとめます。

 

ウェブアプリを作る。3(Djangoプロジェクト作成)

 

前回テーブル定義を考えたので、

www.te-tou.tokyo

 今回「Django」でプロジェクトを作成します。(環境構築)

前提
  • Pythonは3系を選択
  • Anacondaをインストール済み
  • gitもインストール済み
流れ

言葉の意味は置いておいて、ざっくりとプロジェクト作成の流れです。

  1. アプリを入れるフォルダ(ディレクトリ)を作成
  2. フォルダ内に移動し、virtualenvでアプリのディレクトリを作成
  3. 作成したアプリディレクトリを起動する(アクティベート)
  4. アクティブになったディレクトリにDjangoをインストールする
  5. アプリを終了する(ディアクティベート)

いったんこれでDjangoアプリの土台が作成できます。

 

virtualenvについて

あっているか分かりませんが、私の解釈で。

Djangoは一つのフォルダの配下に、複数のアプリが作られます。

その複数のアプリ一つ一つに対して、(独立した)環境構築をする事のようです。

(一つの環境で複数のアプリが動いていると、よくないみたいです。)

※頭の中を整理するために書いた図です。

f:id:te-tou:20200130025106j:plain

Djangoの環境構築について

アプリを動かすときは

  • activeにする(コマンドで起動)

アプリを終了するときは

  • deactiveにする(コマンドで終了)

こんな感じです。

環境構築

pythonがちゃんとインストールできてるか確認します。

 $ python -V

それらしき表示が出ればOKです。

私の場合は、こんな感じです。

f:id:te-tou:20200130030812p:plain

python -V

Djangoアプリをいれるフォルダ(今回はprojectフォルダ)がある前提で、そのフォルダ内に移動します。

 $ cd project

virtualenvでアプリのディレクトリ(環境)を作成します。

(今回は、"scoring-sheet"アプリにします)

 $ virtualenv -p python3 scoring-sheet

projectフォルダ内に"scoring-sheet"というディレクトリが生成されます。

 

これでアプリの土台ができました。


 アクティベート

アプリを起動(アクティベート)します。

scoring-sheet/bin のなかに"activate"というファイルがあるのでそれを呼びます。

(macとかlinaxの場合。winはbatファイルがあるらしいので、それをダブルクリック)

 $ source scoring-sheet/bin/activate

 すると、ターミナルに(scoring-sheet)〜という表示が出ます。

アクティベートされた状態です。

Djangoインストール

ここまではpythonの環境を作りました。

次はこの環境の中に"Django"をインストールします。

 $ pip install django

 これでエラーが出たら、

 $ pip3 install django

 を試してください。

ターミナル(プロンプト)上でインストールの状況を表す目盛りが出てきます。

何事もなければ、これでDjangoインストール完了です。

ディアクティベート

インストールまでできたので、アプリを終了します。

 $ deactivate

 ターミナルの(scoring-sheet)〜という表示がなくなります。

アプリが終了しました。

 

これでアプリにDjangoがインストールされました。

これで環境構築ができました。