忍者ブログ

設備のマニアどっとこむ

IoT開発、設備・DIYのブログ!

djangoのデータベースへM5sticC Plusでpostする方法

最近pythonベースで開発ができるdjangoをいじっていますが、IoT開発もやってみました。
今回はM5stickC plusでデータベースへpostしてみました。



アプリフォルダのmodel.pyは下記のように設定しています。
from django.db import models
class  Member(models.Model):
    id2 = models.FloatField()
    x = models.FloatField()
    y = models.FloatField()
    z = models.FloatField()
    xx = models.FloatField()


小数点を使いますのですべてFloatでデータベースを設定しています。
アプリフォルダのurls.pyは下記に設定し、M5stickC Plusのスケッチと設定を合わせていきます。
from django.urls import path
from . import views
app_name = 'アプリ名'
urlpatterns = [
    path('receive_json/', views.receive_json, name='receive_json'),
]
M5stickC Plusのスケッチです。本体付属の加速度センサーの値をpostしていきます。
SSIDの設定と上記のreceive_jsonへのリンクを記述します。最後にアプリフォルダのviews.pyです。jsonを受け取るとデータベースに保存していきます。
またデータベースからグラフを作成して画像にて保存していきます。このままだと403エラーになってしまうのでセキュリティを一部無効にします。
※プロジェクトフォルダのsetup.pyを修正していきます。
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
   # 'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

また、グラフ画像を保存するディレクトリを設定します。こちらはviews.pyフォルダと紐づけていきます。
MEDIA_URL = '/media/'
MEDIA_ROOT = BASE_DIR / "/home/ubuntu/project/media_local"

なれればPHPとSQLで開発するより楽かなあ…

@ultimatemasashi djangoのデータベースにm5stickC plusでpostしてグラフにしました。#m5stack #m5stickc_plus #django #python #IoT ♬ California Dreamin' - The Mamas & The Papas







拍手[0回]

PR

コメント

1. 無題

This ᴡas one oof the mօst fun I've had playung a sports betting game іn somе
time.

2. 無題

Greetings frοm Colorado! I'm bored at work ѕo І decided
tߋ check out youг website on mʏ iphone dսring lunch break.
I love the info you provide һere and can't wait to take a
look when I get home. I'm surprised аt hoow fast youг bloig loaded оn mmy
phone .. I'm not even uѕing WIFI, ϳust 3G
.. Αnyways, gоod site!

翻訳(Translate)

プロフィール

HN:
佐々木 雅史
性別:
男性
自己紹介:
2021年 ラズパイ、M5stackを用いたIoT開発を専門で受注するアルティメンテを設立。代表を務める。
・2020年ラズパイコンテスト優良賞受賞
・設備系資格多数(電験3種、消防設備士甲4、2級ボイラー技士、危険物乙4、電工2種、技術士補(電気・電子)、エネ電、フォークリフトなど)

AD

カレンダー

04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31