2016-01-01から1年間の記事一覧

【xcode】「no such module afnetworking」対応

久々にxcode作業 xcodeのアップデートしたらバージョン8.2になってた。 で、swiftのバージョンも3.0.2にで、cocoapodsでAFNetworkingをインストールして以下を書こうとすると「no such module afnetworking」という経緯でした import AFNetworking漠然とxcod…

【Go】gormで実行したsqlをファイルへログ出力する方法メモ

Go

開発時またはリリース後もしばらくはSQLは全てログに残しておきたいのでそのやり方を調べたのでメモ。http://jinzhu.me/gorm/advanced.html#logger ドキュメントにそれっぽいのがあった package main import ( "log" "os" "github.com/jinzhu/gorm" _ "githu…

【php】cronのプロセスを監視する

はじめに 開発環境と現状はこんな感じ ・PHPで開発したスクリプトをcronで起動 ・処理時間が1日とかかかる ・いちおうエラー処理も実装したが途中で処理落ちすることがある(原因が特定できていない)で、やりたかったことは処理が落ちたらアラートメールとか…

【Go】dbrでinsertしてlast_insert_idを取得する

Go

dbrを使ったdb処理でinsertしてオートインクリメント値を取得したいということ。 READMEみてもよくわからなかったけど、コードみたらLastInsertIdというのがあった。 package main import ( "fmt" "strconv" _ "github.com/go-sql-driver/mysql" "github.com…

【Go】stringをtime.Timeに変換(日時文字列→時刻)

Go

今回やりたかったことはMySQLのdatetime型のカラムから取得した値をGoの時刻型に変換したかったということ。 なかなかうまくいかず以下にたどり着いた date := "2016-12-22 23:01:00" layout := "2006-01-02 15:04:05" t, _ := time.Parse(layout, target) f…

【Go】設定ファイルなどを非公開にして無料Githubでプロジェクト管理する

はじめに Githubのアカウントは持ってたけどコード管理したりはしてなかった。 で、今回試しに使ってみようかと思った。 個人用途なので無料のパブリックなレポジトリで。基本的にコードの中身は見られても問題ないけどアカウントやファイルパスなどは公開し…

【Go】Twitter Search APIを使ってみる

Go

はじめに やりたいことはキーワードでtwitterの投稿を取得してくるだけちょっとだけプログラムいじった箇所は以下 ・1回で取得できる件数の上限(100件)が決まっているので複数回取得するようにする ・タイムゾーンをJSTに パッケージ 今回使ったパッケージは…

【Go】direnvとglideで開発環境構築してパッケージ管理

Go

はじめに 開発始めようとして以下が問題があったので整理しておく。前提条件としては以下 ・複数人での開発で各々のPCで開発を想定 ・コードはgitで管理で、サードパーティのパッケージをどう管理するかとういのが問題点でした。 そのままやると$GOPATH以下…

sshの流れとかまとめメモ

自分なりに整理したものをまとめ パスワード認証はあまりやらないので今回はなし。公開鍵認証方式の前提で。 コマンドとかはなしでイメージだけ 準備 クライアント側でssh-genコマンドで作った公開鍵をサーバーへあらかじめサーバーのauthorized_keysへ登録…

今さらだけどクッキーについてまとめメモ

setとgetの中身 サーバ → ブラウザ 以下をhttpヘッダーにセットしてレスポンス Set-Cookie: key=value;・・・; domain=example.com; path=/; expire=xxx; Secureブラウザ → サーバー Set-Cookieのdomain属性とpath属性とリクエストするurlが一致した場合に以…

【node.js】TransformStreamを使ってみた

はじめに babelifyとかいうモジュールのコードを見てたらstreamというのが出てきてよくわからなくなったのでとりあえずいじってみた内容はcsvを読み込んでtsvに変換して出力するだけtest.js #!/usr/bin/env node var fs = require("fs"), inherits = require…

【javascript】エラー処理を実装してエラーレポートを送信する

はじめに アプリ作る時はクラッシュレポートしてるのにjavascriptのエラーでは全然やってなかった。 jsでも必要があればやったほうがいいかも。ということでメモ 実装 window.onerrorイベントでエラーハンドリングできるみたい window.addEventListener("err…

【javascript】値渡し、参照渡しとか

値渡し var a = 1; var b = a; b = 2; console.log(a); // => 1 console.log(b); // => 2 値渡し2 var a = "1"; var b = a; b = "2"; console.log(a); // => "1" console.log(b); // => "2" 参照渡し var a = [1]; var b = a; b[0] = 2; console.log(a); // …

【javascript】objectのプロパティ(key)を動的に扱う

es6の環境で動作確認した結果定義する var _p3 = "p3"; var obj = { p : 1, "p2" : 2, [_p3] : 3 }; console.log(obj); // => Object {p: 1, p2: 2, p3: 3} アクセスする console.log(obj.p); // => 1 console.log(obj["p2"]); // => 2 console.log(obj[_p3]…

【react】form部品を共通化するときのひな形

はじめに ES6でのシンプルなものだけど共通化するとしたらこんな感じだろうか呼び出し側 import React from "react"; import FormPart from "./FormPart.jsx"; export default class Sample extends React.Component { constructor(props) { super(props); t…

urlにタブ文字は使わない

かなりどうでもいい内容リンク元 <a href="/example.com/?q=[スペース][TAB文字]ほげげ">リンクです</a>DB > select name from table; [スペース]ほげげリンク先にて $q = $_GET["q"]; $sql = "select * from table where name like \"%{$q}%\""; // => SELECT * FROM table WHERE name LIKE "%[スペース]ほげげ%"; my…

【react】preventDefault、stopPropagationを使う

よく使うpreventDefaultとstopPropagation。 reactでも普通に使える export default class Sample extends React.Component { onParent(e) { // リンク先への遷移を抑制 e.preventDefault(); } onChild(e) { // onParentへのイベントを抑制 e.stopPropagatio…

【php】値渡し、参照渡しとか

php

値の値渡し function set($arr) { $arr[0] = 2; } $arr = [1]; set($arr); print_r($arr); // => [1]値の参照渡し function set(&$arr) { $arr[0] = 2; } $arr = [1]; set($arr); print_r($arr); // => [2]参照の値渡し function set($obj) { $obj->pro = 2;…

【react】Expected onClick listener to be a function, instead got type stringエラー対応

はじめに reactをes6で使った場合です。 地味にはまった。。。自分の場合は以下の2パターン> パターン1イベントリスナーでメソッド呼び出すときにbindしていない export default class Sample extends React.Component { onClick() { console.log(this.statu…

【node.js】端末ごとに処理を分けるサンプル

はじめに 最近、ちょっとjavascriptいじる機会があってiPhone、Androidでけっこう内容が異なる処理をしなくてはならなくなったのでコードを整理する用途でnode.js使ってみたのでメモindex.js import Ios from "ios"; import Android from "android"; import …

【node.js】minifyifyでコードを圧縮する〜watchify、babelify、browserify環境にて

前提 $ watchify -v -t babelify src/index.js -o dist/index.jsこちらのコマンドが動くようにwatchify、babelify、browserifyはいれてあることとする。 使ってみる minifyifyインストール $ npm install minifyify --save実行 $ watchify -v -t babelify -p…

【emacs】対応する括弧へ移動する方法メモ

今更すぎる内容で悲しいが、、、絶対必須かと思われる機能を使ってなかった。。。検索すると以下 「C-M-p」で対応する開き括弧へ 「C-M-n」で対応する閉じ括弧へで、実際のキーボード操作は 「C-M-p」は「esc」押して離して「control」+「p」同時押し 「C-M-…

【react】jqueryメインの非SPAシステムの特定ページでのみreactを導入してみたのでメモ

はじめに 以前に自分が作ったシステムで主にjqueryを使って作ったものがありました。 基本的には困ることはなかったのですが、特定のページだけ複雑になってきていじるのが嫌になってきました。。。作りたい画面のイメージとしてはこんなかんじメイン画面 モ…

android browser(標準ブラウザ)で縦長動画がつぶれて再生されたときの対応

標準ブラウザって今さらすぎる内容なのかもしれないけど、ちょっとハマったのでメモ なぜか縦長の動画だけつぶれて表示されてしまってた。原因はわからないけど解決策はvideoタグにcontrolsをつければよかった。 今回はui的にはcontrolsは不要だったので動画…

【javascript】動画の終了時に画像を表示する〜videoタグ

はじめに やりかたわからなかったのでメモ やりたいことはvideoタグで再生した動画が終了したら画像を表示するだけ (posterの終了後みたいなイメージ)video.load()しなおせばposterが再表示されるようなのでこれ使えばやろうと思えばできそうだった。 けど、…

【fuelphp】controller名にアンダーバー(アンダースコア)を使う方法メモ

はじめに 今回やりたかったのは以下のようなurlを使いたかった http://example.com/member_groupで、fuelphpのコントローラの命名規則でアンダーバー(_)はフォルダ区切り文字なのでそのまま使えない。 routes.phpに以下のように書けばurlは実現できるけどフ…

スマホでの動画インライン自動再生まわりについて調べたことまとめ

はじめに ちょっと前に自分なりに調べて放置になっていたのでまとめておく まず前提としてiPhoneとAndroidで全然違う。で、さらにios10とios9以下とでちがうのとchrome53以上と53未満でちがう。 端末やブラウザのバージョンで処理を切り分けるのがよいのかと…

【javascript】ios10でpagehideが呼ばれなくなった操作メモ

ページから離れるときに何か処理をしたいと思ってiosでpagehideをハンドリングしていた。 ios9では 1. リンクで別ページへ遷移 2. タブを閉じて画面を閉じるときにはちゃんと発火されていただがios10では2.の場合に呼ばれなくなっている気がする。。。 何気…

【javascript】ios10でsetIntervalした処理がバックグラウンドに回ったときの挙動について

検証用のコードは以下の様な簡単なものでsafariで確認 setInterval(function() { // 何か処理 }, 200);ios9では ・200msごとに実行される続ける ・別のタブを開くなど画面から離れる ・1000msごとに実行される続ける ・画面に戻る ・200msごとに実行される続…

【javascript】特定の要素が画面に見えているかどうかを判定する方法メモ

はじめに 今回やりたかったのは特定の要素が画面に見えていたら何か処理をするということ。 要素が全て見えている場合と50%以上みえてるときを検知できるような想定 実装 全て見えているかを判定 var target = document.getElementById("target"); var offse…