よしまさのウェブサイト

システムやプログラムのメモ・雑感

djangoのauth認証の入力項目を複数追加してみた。

ブログカテゴリー
システムやプログラムのメモ・雑感
投稿日時

djangoに標準搭載の認証機能authを使っているけど、すこぶる使い勝手が悪い。
通常状態だとusernameとpasswordで認証する仕組みになっているけど、これをemailとpasswordに変更するだけでも一苦労である。
今回はusernameとpasswordに加え、もう一つclient_idという項目を追加したログイン機能を作れないか試してみた。
要するに、アカウント名+パスワードだけではなく、会社IDを追加することでセキュリティを強化するというのが目標。
応用すれば、ログインの項目をusernameとpasswordだけではなく、これにグループIDやメールアドレスなどの3つ以上の項目を複数追加可能になる。
結構ニーズがあるのではなかろうかと思うけど、調べてみてどこにも方法が書かれていないので頑張ってみた。

ウェブサイト*+LINE+Facebookで自習室の自動連絡網システムを作成した

ブログカテゴリー
システムやプログラムのメモ・雑感
投稿日時

先週、台風により急に自習室をお休みすることになった。
台風だけに、幸い当日は自習室に来た人はいなかったらしく、とりあえず急なお休みで迷惑をかける事態には至らなかった。
しかし、仮に自習室に来た人がいたら、せっかく台風に耐えて来てくれたのに、そのまま台風の中でとんぼ返りさせるという酷い事態を招いたことになる。
前々から、何か自習室の連絡網システムを作ろうとは思っていたけど、最近時間もあるからこの機会に完成させることにした。

LINEで自動投稿BOTを作る

ブログカテゴリー
システムやプログラムのメモ・雑感
投稿日時

急な事情で自習室をお休みにする場合の連絡手段ということで、LINEのAPI BOTに手を出してみた。
LINEで自習室連絡用のグループを作っておき、お休みの際は自動で通知されるという仕組みにする。
仕組み的には、ウェブでお休み通知を作成する⇒自動で同じ文面がLINEグループで送信される、という形。
「別にLINEで直接送ればいいじゃん」という突っ込みもありそうだけど、ウェブとLINEで両方通知するのは面倒だし、ウェブ主導だとLINEの他に先日作成したFacebook APIのグループ通知も使えるし、いまは使ってないTwitterにも通知できるなど、汎用性が高い。

ここまでは前置き。

ブログとFacebookを連携してみた

ブログカテゴリー
システムやプログラムのメモ・雑感
投稿日時

久々のブログ投稿。
先月末でプロジェクトが一段落したので、前々から試してみたかったFacebookとブログの連携について色々試してみた。
エンジニアには割と有名な話と思うけど、2018年8月からFacebook APIはニュースフィードの自動投稿を禁止した。
それ以前にはTwitterからの自動投稿がFacebookに溢れていたけど、最近全く見なくなったのはそれが理由。
その良し悪しはともかくとして、これを機に世界中のブログサービスなどがサービスを大きく変更するに至った。
この機能を前提にしていた顧客などは依頼主に対して、「自動連係が動かなくなったんだが!?」というクレームをするというケースは世界各地で発生しただろう。
エンジニア的には「そうは言われましても、Facebookの仕様で無理になったわけで・・・・・」と答えたいところだけど、依頼主が「システム開発にコストかけたんだぞ!」とブチ切れる気持ちも分かる。
下手したらクレーム問題にもなりかねない話だ。
しかし、そうは言われてもFacebookの仕様が変わったからにはどうしようもないわけで、お役所様のように「決まりですので」「もう決まってしまったことですので」と返すしかない。
「何てことしてくれたんだ、Facebookは!」というのは数多くのエンジニアの怨嗟の叫びだろう。

僕もその一人である。
しかし、力なき僕にもわずかばかりの良心だけは残されている。
何も代替策や提案を示さず、「無理です」と突っぱねて顧客が与えてくれた開発コストを当然のごとくに亡き者にするのは、さすがに心が痛む。
まぁ、そういうわけでずっと心の中で「何か代替策はないかなぁ、実験したいなぁ」と思っていたけど、なかなかその機会がなかった。
そう思いつつ、もう一年以上。
ついに実験する時間があったので、簡単に試してみた結果をまとめてみる。

TinyMCEで画像をアップロードする

ブログカテゴリー
システムやプログラムのメモ・雑感
投稿日時

いつもリッチテキストエディターはCKEditorを使っていて、画像アップロードは無料のKCFinderを使っていた。
が、今回は気まぐれでTinyMCEを使ってみた。
ここに深い理由はない。

で、CKEditorでもそうなんだけど、大体の人にとって最大の問題になるのは画像のアップロードではなかろうか?
CKEditorにはCKFinderというプラグインがあるけど、こいつは有料なのでダメ。
同じくTinyMCEにもMoxieManagerなるものがあるらしいんだが、こっちは$10/月という恐ろしさ。
でも、TinyMCEってマニュアルを読んでると標準pluginだけで画像アップロードができそう。
しかし、どこにもTinyMCEの標準機能で画像アップロード機能を作ったって話がない(英語でも、日本語でも)。

というわけで、作ってみましたよ、と。
ここまで前置き。