2019-03-01から1ヶ月間の記事一覧
いままでURLの文法をあまり深く考えたことがなかったのですが、よく調べてみると面白かったので紹介します。 ある時、PythonでURLをパースしていたんですが、ドキュメントを見ると scheme://netloc/path;parameters?query#fragment 上記のようなRFC1808の形…
最近、連想配列を使うべきかクラス定義してオブジェクトを作るかみたいなところで非常によく悩んでいます。 例えば、エラーとかだとわかりやすいのですが def validate(params): errors = [] result = True if is_bad_params(params): errors.append('is_bad…
みなさんtransaction使ってますか?transactionは便利で使う機会がとても多いと思います。 しかし皆さんちゃんとcommitとrollbackを設定していますか? まぁセッションからコミットされない限りデータに変更ないしヘーキヘーキ!みたいなことを思ってる方も…
MySQLの権限設定で困ったのでメモ。 RDSだとちょっと使えない文字列があるので注意です 普通にGRANT設定するだけ GRANT SELECT,INSERT,UPDATE,DELETE ON `DB名`.* TO `ユーザ名`@* IDENTIFIED BY 'パスワード'; 上記のSELECTやINSERTのところに許可したい権…
皆さん、PythonにもPHPのOPCacheのようなキャッシュ機能があったのをご存知ですか? そんなLRUCacheの紹介をしようと思います。こちらはPython3.2以降で使える機能です。 docs.python.org LRUCacheは LRU (least recently used) cache という技術をつかって…
ssh接続してますか? ssh接続のポートを変更する際はいろいろな設定を変更しなければいけませんよね。 sshのコンフィグ、iptables、 もしAWS使ってたらセキュリティグループもいじらないといけません。 しかし実は SELinux もいじらないといけないんです。上…
MySQLで文字列から数値の型変換でちょっと変換のされかたが特殊だったので紹介します。 公式のドキュメントはこちら MySQL :: MySQL 5.6 リファレンスマニュアル :: 12.10 キャスト関数と演算子 明示的な型変換 型変換というのはだいたいアプリケーション側…
segueで遷移する時になにか初期データを渡して遷移させたい?そんなことを考えたことがありませんか? 遷移時にAPIを呼び出したりするのもUX的にちょっとなぁ。。。みたいなことはあると思います。 そんな時はsegue遷移時の以下のコードのようにして定義でき…
Pythonで引数にコロンなどの利用できない文字を含めたパラメータ名で呼び出したいといった場合がありませんか? どういう意味かわからないって顔をしている人が多そうです。 sample(ho:ge='hoge') みたいな感じで呼び出したいってことですね。 もちろん上記…
みなさんTableViewつかってますか? アプリを作る上でTableViewは欠かせない要素だと思います。 そんなTableViewが急に一切表示されなくなったということがありました。 cellの生成メソッドは問題なく呼ばれているのになぜ?という感じでしたが、原因がわか…
今やiOSアプリを作る際はfirebaseを導入するでしょう!といった雰囲気があります。 firebaseは無料で使える非常に優秀なツールなのでたしかに入れない理由はありません。 ですが、 (https://firebase.google.com/docs/ios/setup?hl=ja) の通りに導入したのに…
iOSの開発で誰しもが困るポイント「画面遷移」 segueを使って実装したらかなり楽でした。 以下のようなやりかたで実現できます。 1. 遷移先のView Controller作成 storyboardからView Controllerをもう一つ作成しましょう 2. 遷移元のView Controllerと遷移…
外部と通信しているアプリケーションの場合、通信できない原因はSELinuxを疑ってみると原因がSELinuxであることが多々あります。 でもSELinuxってなかなか難しいですよね。 web上を探してもあんまり資料が落ちてないし、そもそも疑うエラーログからは全然SEL…
Pythonでモジュールの動的なインポートからのインスタンス生成をしたので紹介します。 クラスだけ動的に生成はけっこうあるんですが、モジュールの動的インポートって結構レアみたいですね。 IDEとかでエラーが見えづらくなるので、そこは注意してくださいね…
iOSアプリを作ってる時にナビゲーションバーにボタンを設置して、そこから前の画面へ遷移したりすることはよくあると思います。 こんなやつ そんな時に事件は起こりました。 segueをつなげてさあ別のページへ遷移!と設定したんですが、全然動かない。。。。…
無料のSSL証明書として名高いcertbot(旧 let's encrypt)ですが、証明書の更新方法として tls-sni-01 のサポートを終了するようですね。 なにか対応するつもりだったのらしいですが、諦めたみたいな話らしいです。 community.letsencrypt.org 上記が脆弱性…
皆さんSQLAlchemy使ってますか? github.com PythonのORマッパーといえば、SQLAlchemyと言われるくらいSQLAlchemyは利用されているライブラリです。 そんな中、マニュアル読んでざっくり使ってるだけだとMySQLでINTEGERやVARCHARは使えるんだけど、TINYINTや…
Xcodeで5年ぶりにコードを書いている時、あれ?なんか直してビルドしてもエラーが修正されないぞ? みたいなことが発生しました。 Xcode使ったり、eclipseでJava書いてる人には常識なんですが、5年ぶりでめっちゃ忘れてて1時間くらいハマったのでここにメモ…
Swiftを5年ぶりに触ってたんですが、なんだかCodableというJSONを簡単に扱えるプロトコルが実装されてて非常に感動しました。 3週間前のメモなんで8割がた忘れちゃったんですが、頑張って思い出しながら書いてみます。 Codableとは 公式のリファレンスはこち…