Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
炭酸飲料が飲めない学校で炭酸飲料を飲めるよにした話
Search
Daniel
October 07, 2018
Programming
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
炭酸飲料が飲めない学校で炭酸飲料を飲めるよにした話
Daniel
October 07, 2018
More Decks by Daniel
See All by Daniel
Juliaで機械学習
peshogo
2
840
RISC-VボードでRustを動かす話
peshogo
1
980
一年生へ
peshogo
1
85
Other Decks in Programming
See All in Programming
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.3k
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
390
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
400
Flow は今どうなっているか
mizdra
PRO
0
810
AIエージェント時代のコードレビューを設計する
nogu66
5
1.1k
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
160
My Marp Sample
sinoue0108
0
140
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
500
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
770
高専キャリア LT 発表内容
crysta1221
6
5.3k
初めての模倣学習とVLA
natsutan
0
390
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
4
2.4k
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Bash Introduction
62gerente
615
220k
The Language of Interfaces
destraynor
162
27k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
480
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
How GitHub (no longer) Works
holman
316
150k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Exploring anti-patterns in Rails
aemeredith
3
490
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
850
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
410
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Transcript
炭酸飲料が飲めない学校で 炭酸飲料を飲めるようにした話
⾃⼰紹介 ダニエル(⾼⽥勝悟) ⼋王⼦桑志⾼校システム情報分野 Python が好き
炭酸飲料が好きな⼈?
学校で炭酸飲料が買えない
炭酸飲料を売っている ⾃動販売機を作ってしまおう
その頃... Django ⾯⽩いな〜。 何か作ってみたいな〜。
⾃動販売機を管理するための Web アプリを作ろう
作ったもの 炭酸飲料を保管する箱 管理⽤Web アプリ
Django
データベース from django.db import models class Person(models.Model): first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
データベース CREATE TABLE myapp_person ( "id" serial NOT NULL PRIMARY
KEY, "first_name" varchar(30) NOT NULL, "last_name" varchar(30) NOT NULL );
from ... import Person p1 = Person(first_name="Shogo", last_name="Takata") p1.save() p2
= Person() p2.first_name = "Shogo" p2.last_name = "Takata" p2.save()
Django データベース HTML テンプレート ルータ ユーザー認証
⾃動販売機 ユーザー認証 商品 残⾼
商品 class Item(models.Model): product_name = models.CharField(max_length=200) product_price = models.IntegerField() product_price_with_fee
= models.IntegerField() added_date = models.DateTimeField(null=True) seller = models.ForeignKey(User, on_delete=models.SET_NULL,
売る
買う
class Log(models.Model): product_name = models.CharField(max_length=200) product_price = models.IntegerField() product_price_with_fee =
models.IntegerField() added_date = models.DateTimeField(null=True) deleted_date = models.DateTimeField(null=True) seller = models.ForeignKey( User, on_delete=models.SET_NULL, null=True, related_name buyer = models.ForeignKey( User, on_delete=models.SET_NULL, null=True, related_name
残⾼ 1. ユーザーDB につける 問題が起きたときに⾯倒 2. ログを遡って残⾼を⾒る 問題の起きたログだけ消せばいい ⼊⾦出⾦ができない 3.
⼊⾦出⾦もログに⼊れよう 商品名をIn , Out にしてシステムに買わせる
起きた問題
2 度売られてしまう問題 売ったあとページの再読込をすると、もう⼀度売った 判定が出る
解決 ⼀度しか使えないトークンを⽤意する ↓ 同時アクセスに対応できない
⼊⾦
⼊⾦
⼊⾦額が合わない
集めた税から出す しっかり確認する(未実装)
学校が炭酸飲料を⼊れた
学校「炭酸飲料は⼊荷しません」 クラス「仕⽅ない、⾃分たちで作ろう」 3 ヶ⽉後... 学校「炭酸飲料⼊荷します」 クラス「?!?!」
実績
まとめ Django を使えばデータベースを使ったWeb アプリ を簡単に実装できる お⾦が絡むシステムで信頼ベースはきつい 都⽴⾼校って案外ちょろい