Skip to content

Instantly share code, notes, and snippets.

View hypermkt's full-sized avatar

Makoto Chiba hypermkt

View GitHub Profile
@hypermkt
hypermkt / gist:fd79c01fa3f1e7fdef91
Created March 10, 2015 15:23
Sequel Pro: copyAsMarkdown
#!/usr/bin/php
<?php
$stdIn = fopen("php://stdin", "r");
$result = [];
while($row = fgetcsv($stdIn, 0)) {
array_push($result, $row);
}
$c = new CsvToMarkdownConverter();
@hypermkt
hypermkt / gist:8333495
Last active January 2, 2016 16:59 — forked from doloopwhile/gist:5115016
コメントを追加&自分用に改良
#!/bin/bash
# 文法チェック対象の拡張子
extensions='\.(php)$'
# トップレベルディレクトリを絶対パスで取得 例)/home/hoge/work/
root=$(git rev-parse --show-toplevel)
# 1. コミットに登録されたファイル名一覧を取得
# 2. 指定拡張子のみに絞り込み
@hypermkt
hypermkt / structure.md
Created May 5, 2016 14:46
vue-validator structure.md

バリデーション結果構造

バリデーション結果はこの構造でアクセスできます:

{
  // top-level validation properties
  valid: true,
  invalid: false,
  touched: false,

バリデーションタイミング変更

vue-validator は validator エレメントディレクティブと v-validate ディレクティブで自動的にバリデートを実行します。しかしながら時々、自動バリデーションを無効化し手動でバリデートを実行したい時があります。

initial

vue-validator は初回コンパイルを終えると、それぞれの v-validate ディレクティブは自動的に対象エレメントのバリデートを実行します。もしこの挙動を望まない場合は、 initial 属性又は v-validate を指定できます:

<div id="app">
  <validator name="validation1">

非同期バリデーション

非同期のバリデーションを使用することができます。これはサーバーサイドバリデーションのように使用するときに便利です。下記は例です:

<template>
  <validator name="validation">
    <form novalidate>
      <h1>user registration</h1>
      <div class="username">
/var/tmp/php-build/source/5.6.0/ext/opcache/ZendAccelerator.c:397:28: warning: assigning to 'char *' from 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        CG(interned_empty_string) = accel_new_interned_string("", sizeof(""), 0 TSRMLS_CC);
                                  ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: ext/opcache/.libs/opcache.a(shared_alloc_shm.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: ext/opcache/.libs/opcache.a(shared_alloc_shm.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /var/tmp/php-build/source/5.6.0/modules/opcache.a(shared_alloc_shm.o) has no symbols
/var/tmp/php-build/source/5.6.0/ext/date/php_date.c:2245:6: warning: absolute value function 'abs' given an argument of type 'long long' but has parameter of type 'int' which may cause truncation of value [-Wabsolute-value]
               
@hypermkt
hypermkt / vuejs_testing_research.md
Last active June 20, 2017 10:31
Vue.js Testing 調査

Vue.js Testingに関する調査

背景

Testingライブラリ

  • ライブラリはいくつかあったが、どれもオフィシャルではない。
  • 2017年6月1日にVue.js本件のOrganizationで vue-test-utilsが誕生している
<?php
$base_url = 'xxx';
$data = [
"text" => "Would you like to play a game?",
"attachments" => [
[
"text" => "Choose a game to play",
"fallback" => "You are unable to choose a game",
@hypermkt
hypermkt / web-api-the-good-parts-reading-memo.md
Last active February 21, 2018 05:39
Web API The Good Partsの読書メモ

Web API The Good Parts 読書メモ

5章 設計変更をしやすいWeb APIを作る

  • APIをバージョン管理する
    • URIのバージョンを埋め込む
      • URIのパスの一番先頭につけるのが一般的
      • v を先頭につけることでバージョンとはっきり分かる
    • バージョンをクエリ文字列に入れる
      • パスとクエリ文字列の違いは、それが省略可能であること
  • デフォルトでは最新バージョンか下位バージョンはサービス次第

リソースの複数削除

実装方法

パターン1: DELETEメソッドで対象IDを複数個指定

DELETE /resources?ids=recordId1,recordId2

Request

無し

Response

204 No Content