mk-toolブログ

エンジニアと家のことをごちゃごちゃと書いてます

【Python】AttributeError: 'dict' object has no attribute 'has_key'

概要 以下のエラーメッセージが表示されたので対処。 AttributeError: 'dict' object has no attribute 'has_key' 解決策 has_keyはpython3で使えないらしいので、inを使ってキーの存在確認を行う。 if 'Item' in raw_data: # code else: # code 参考 https:…

【Python】Python3でnew.instancemethodが使えないテーブル作成時にエラー

概要 boto3を利用してテーブルを作成する際に以下のエラーが発生したためメモ。 An error occurred (ValidationException) when calling the CreateTable operation: Hash Key not specified in Attribute Definitions. Type unknown. 解決方法 テーブル作成…

【Docker】OCI runtime exec failedと言われた

【概要】 Dockerコンテナに入る際に以下のことを言われたのでメモ。 OCI runtime exec failed: exec failed: container_linux.go:348: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory": unknown 【解…

【Docker】docker-composeでExited (0)とかでるとき

概要 docker-composeでExited (0)が出て全然コンテナが立ち上がらないので困り果てたのでメモ。 本文 dockerコンテナの立ち上げ結果をみた際にExited (0)が出るので対策を調べてみたら、dockerのimageから起動してみる記事にありついた。 以下のコマンドでim…

【Python】The session is unavailable because no secret key was set.

概要 以下のエラーが発生したため対処。 The session is unavailable because no secret key was set. 本題 Flaskでsession変数を扱う際は、以下のようにする。 from flask import session // 略 session['user_id'] = "hogehoge" しかしながら、secret key…

【Go】逆ポーランドを出力

Go

概要 いまさらですが逆ポーランドを出力するものを書く。 元ネタは改訂第4版 C言語によるはじめてのアルゴリズム入門。 本題 逆ポーランドを出力するためには、数値と演算子の優先度を比較しながらstackに値を一時格納する。 逆ポーランドの出力が確定した部…

【Go】順リストを書く

概要 いまさらですが順リストを書く。 元ネタは改訂第4版 C言語によるはじめてのアルゴリズム入門。 本題 以下ソースコード。 old.pointer = nの次にold = nとあるのですが、これってoldの指すアドレスを変えるってことなんだな、と理解するまでに苦労した。…

【Go】逆順リストを書く

概要 いまさらですが逆順リストを書く。 元ネタは改訂第4版 C言語によるはじめてのアルゴリズム入門。 本題 以下ソースコード。 package main import ( "fmt" ) type node struct { name string tel string pointer *node } func main() { var head *node = …

【Go】キューを書く

概要 いまさらですがキューを書きます。 元ネタは改訂第4版 C言語によるはじめてのアルゴリズム入門です。 本題 以下ソースコード。 package main import ( "fmt" ) const MAXSIZE = 5 // キューの最大長 var queue [5]int var head int = 0 // キューの先頭…

【Go】スタックを書く

概要 いまさらですがスタックを書きます。 元ネタは改訂第4版 C言語によるはじめてのアルゴリズム入門です。 本題 以下ソースコード。 package main import ( "fmt" ) const MAXSIZE = 5 // スタックの最大長 var stack [5]int var sp int = 0 // スタックポ…

【Laravel】Eager-Loadingでlimitを使ってはいけない

概要 いけないというか、Eager-Loadingでlimitを利用する際は挙動をちゃんと理解していないと思わぬ動作をする。 本題 以下のようなテーブルがあった際に、Bookに紐づくChapterをEager-Loadingを利用して、それぞれの本の最後の章を取得したい場合を考える。…

【Laravel】ファイルキャッシュが動くかテスト

概要 ファイルキャッシュを使って、1分経過したらキャッシュから消えるようにした。 方法 実際に、Laravelのドキュメントの通りに実装すると /storage/framework/cacheの場所にキャッシュができていた。 $value = \Cache::store('file')->remember('key', 1,…

Laravelのアーキテクチャ

概要 自分的なLaravelの運用しやすいアーキテクチャ案ができたのでメモ。 細かい部分はプロジェクトによって異なると思うので、大枠的なアーキテクチャを述べる。 自分なりの考え LaravelではMVCとしての開発の準備が充実しているため、MVCをベースとしたア…

ブラウザバック時にFORM送信された値が保持されない

概要 取り扱っているシステムでブラウザバック時にFORM送信された値が保持されない箇所があったので原因を調査した。 状況 選択肢1と選択肢2が存在し以下の流れでブラウザバックをする。 選択肢1の値はサーバサイドで作られる 選択肢1の選択に追従して選択肢…

【Python】ImproperlyConfigured: MySQLdb must be installed.がでた

概要 peeweeにおいてconnectやcreate_tableを行う際に、以下のエラーが発生したためメモ。 ImproperlyConfigured: MySQLdb must be installed. 解決法 PythonからMySQLを操作するモジュールをpip経由でinstallすれば解決。 pip3 install PyMySQL // もしくは…

MySQLを動かすことができない場合の対処方法

概要 以下のエラーが発生したためメモ。 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 詳細 mysql起動 「mysql」コマンドを実行しても上記のエラーが発生して先に進まない service mysql sta…

【Python】oduleNotFoundError: No module named '__builtin__'

概要 以下のエラーが発生したためメモ。Python3では__buildin__が利用できない。 ModuleNotFoundError: No module named '__builtin__' 解決策 __buildin__の代わりにbuiltinsを利用する。 # import __builtin__ ※これは使えない import builtins # __builti…

【Python】Python3でnew.instancemethodが使えない

概要 以下のエラーが発生したためメモ。 ModuleNotFoundError: No module named 'new' 調べてみるとPython3ではnewモジュールが利用できないみたい。 解決策 以下のように行うことで、解消できる。 # import new ※これは使用できない from types import Meth…

【Python】socket.error: [Errno 48] Address already in use

# 概要 以下のエラーが出たためメモ。 ``` socket.error: [Errno 48] Address already in use ```# 解決策 以下のコマンドを実行し、サーバ的な処理を行なっているプロセスをkillする。``` // 検索 ps -fA | grep python // 結果に対してkill kill [プロセス…

【Python】TypeError: Unicode-objects must be encoded before hashing

概要 以下のエラーが出たためメモ。 TypeError: Unicode-objects must be encoded before hashing 解決策 文字列の末尾に.encode('utf-8')を追記する。

【Python】AttributeError: 'UUID' object has no attribute 'get_hex'

概要 以下のエラーが発生したためメモ。 AttributeError: 'UUID' object has no attribute 'get_hex' 解決法 get_hexをhexにする。 - key = self.prefix + uuid.uuid4().get_hex() + key = self.prefix + uuid.uuid4().hex

【Python】MySQLdb must be installed on the system

概要 以下のエラーが出たためメモ。 MySQLdb must be installed on the system 解決策 PyMySQLをinstallする。 pip3 install PyMySQL // もしくは pip install PyMySQL

【Python】throwされたErrorのメッセージをconsoleに表示

概要 Errorメッセージをconsoleに表示して何がおきているか確認する。 解決方法 for model in models: try: // 処理 print("success); except Exception as e: print("message : %s" % e) pass

【Python】AttributeError: 'dict' object has no attribute 'iteritems'

概要 以下のエラーが出たので対応。 AttributeError: 'dict' object has no attribute 'iteritems' 解決策 iteritems()からitems()にする。

【Python】NameError: name 'unicode' is not defined

概要 以下のエラーが出たので対処。 NameError: name 'unicode' is not defined 対処方法 pythonにおいてunicode型を使用した際にエラーが発生。 unicodeをstrにすれば解消する。 unicode<=>strの変換方法配下を参照してみると良い。 strとunicode

【Python】issubclassでTrueを期待するのにFalseが返ってくる

概要 issubclassを使っていて、Trueを期待するのにFalseが返って来て頭がおかしくなりそうになった。 時間をかけた割に大したことを得られなかった悲しさをこのブログにぶつける。 本題 ある復刻プロジェクトをやっているのだが、そのシステムではdynamoDBを…

【Laravel】TokenMismatchExceptionのエラーが出た

概要 LaravelをAPIサーバーとして利用したが、POST時にTokenMismatchExceptionと出てきたのでメモ。 対応方法 CSRFのチェックを外すためにapp\http\Middleware\VerifyCsrfToken.phpの中に以下を記載。 protected $except = [ 'api/*' ]; しかしこれはセキュ…

【Python】htmlファイルの改行とタブを削除するやつ

概要 htmlビルダーを利用して仕事をしているのだが複雑になってくると最終的に出力されるhtmlと、デザイナーが作ったこういう風に作ってください、というモックのhtmlとちゃんとあっているかを目で確認しないといけないのは非常に面倒である。Diffツールを使…

【Typescript】[ts] Generators are only available when targeting ECMAScript 2015 or higher.がでた

redux-sagaを利用する際に、 export function* helloSaga() : void{ console.log("hello saga"); } を書いたら、 [ts] Generators are only available when targeting ECMAScript 2015 or higher. って言われた。 "target": "es6", を書いてあげればOK。

laravel画像ファイルの読み込ませ方

public配下にimgフォルダを作成し、 background: url("../img/ aaa.jpg") no-repeat center center;