読者です 読者をやめる 読者になる 読者になる

howdylikes

Google Developersってわかりづらいよね

API error 4 (datastore_v3: NEED_INDEX): no matching index found error

GCP

GAEでindex.yamlがある状態でdeployした際に表題のエラーが発生 WEB-INF直下にindex.yamlをおいて以下のコマンドを実行してからデプロイすればdatastoreにINDEXが作られた gcloud datastore create-indexes WEB-INF/index.yaml 参考 https://cloud.google.co…

API error 1 (datastore_v3: BAD_REQUEST): Property Body is too long. Maximum length is 1500

DatastoreのEntityの最大文字列長は1500文字 stringで渡さずに普通に[]byteを使えばよさそう。 https://groups.google.com/forum/#!topic/golang-nuts/Zlz04UfME-A

Failed to mount component: template or render function not defined. (found in root instance)

Vue.jsを使っていてエラーが出たのでメモ [Vue warn]: Failed to mount component: template or render function not defined. (found in root instance) このページに書いてあるようにwebpackの設定でresolveを追加 vuejs.org 上記エラーを解決したら以下の…

Parsing error: 'import' and 'export' may appear only with 'sourceType: module'

ESLint使っているときに表題のエラーが発生 .eslintrcに以下の設定を追加で解決 "parserOptions": { "sourceType": "module" }, 参考 https://github.com/AtomLinter/linter-eslint/issues/462

Please configure your git user name and e-mail

Visual Studio Codeでコミットする際に件名のエラーが。 以下のように設定すれば出なくなった。理由はちゃんとみてない。。 git config --global user.name yourname git config --global user.email youremail@address.com

VSCodeでGoの環境を構築

Goの勉強するためにVSCodeを選択したのだが手順が?だったのでメモ ※根本的に間違えている可能性あり。 Go Extension ファイル保存時にで自動でgo fmtがかかったりする模様 あとコード補完とか GoのExtensionをVSCodeからインストール settings.jsonにgopath…

AngularJS Uncaught TypeError: module is not a function

karmaでpreprocessorsにwebpackを指定してテストやっている時にでたエラー beforeEach(module('myApp')); // エラー beforeEach(angular.mock.module('myApp')); 参考サイト stackoverflow.com

AngularJS angular-mocks

karmaでangularが動かねぇなぁとおもってたらangular-mocksじゃなくてangular-mockになってた・・・ https://www.npmjs.com/package/angular-mock 11 downloads in the last day 142 downloads in the last week 365 downloads in the last month なおnpmの…

JavaScriptでArrayオブジェクトの文字列結合の速度検証

よく見るコードだとjoin使っているのが多いですがパフォーマンス的にはどうなんだ?というのを試してみる。 ggっても出てくると思うけど勉強がてらということで。 前提条件 検証パターンは以下の5つでそれぞれ100万回 for文使って+演算子 Array.forEachで+…

Tslint classのメンバ変数はpublicを先にかく

tslintでこんなエラーが Declaration of public static member variable not allowed to appear after declaration of private instance member variable これはダメで class AppCtrl { private users; public static $inject = ["$q"]; constructor(private…

VSCodeでtslint

VSCode tslintの拡張機能をインストール tslint | Visual Studio Marketplace 設定ファイルはDefault Settingsに作られている。 ファイルが空文字になっているけどデフォルトはtslint.json使う模様。 tslint.json プロジェクト直下にtslint.jsonを作る 内容…

Webpack + TypeScriptのTS2304: Cannot find name 'require'エラーの解決法

Webpackでモジュール読み込むときにrequire使いますがjsからなら問題はないですがTypeScriptからだとコンパイルエラーになります。 指定方法がTypeScript上おかしいのでimport文でもだめだと思われます。 require('jade!./app.jade')(); // ERROR in ./src/t…

Error: [$compile:multidir] Multiple directives

表題の通り実行時にエラーが出たので原因と解決方法のメモです。 Webpack + AngularJS + TypeScript構成です。 最終的にエラーになる理由はディレクティブを複数定義したからです。 Webpackが生成するbundle.jsが同じのを吐いているんですよね。 // 呼び出し…

Angular JS require

Angularをrequireしてやったぜと意気揚々としていたのですが angularという変数がグローバルに作られててなんでや、、、と思ってソースを追っていたら angularが結局グローバルに書き込んでいるみたいですね。。 https://github.com/angular/angular.js/blob…

webpackメモ

全然わかっていないのですが、webpackというのがフロントエンド開発でよさげらしいので試してみたメモ。 基本的な使い方は公式のチュートリアルがわかりやすいのでそちらを参照。 SourceMap そのまま1つのjsにまとめられたらデバッグができなくて死が見えて…

gulp 初期構築メモ

gulpでsassを使うまで 前提条件 nodeJSが使えること。 gulp gulpのインストール npm i gulp -g # iはinstallのエイリアス package.jsonを作る npm init sass sassのファイルを作る mkdir sass && touch sass/style.scss /*style.scss*/ h1 { color: red; &:h…

IntellijIDEAでTypeScriptのコード補完

TypeScriptの設定 Enable TypeScript CompillerをON AngularJSのライブラリをダウンロードしてみる この状態でコード補完が微妙に効く several definitionってのは 複数定義されているから出せない?ってことなのですが、よくわからない。 ちなみにこのtsを…

IDEA プラグインの追加(AngularJS)

WebStormではデフォルトであったのですがIDEAにはなかったのでIDEAにAngularJS用のプロジェクトを作るためのメモ 他のプロジェクトも同様でしょうきっと。 メニューのItetelliJ IDEAから

AngularJS プロミス $q

jQueryでいう$.Deferredですかね。 https://code.angularjs.org/1.4.8/docs/api/ng/service/$q $q.defer()でdeferredオブジェクトを取得してdeferred.promiseを返すようにする。 deferredオブジェクトにはpromiseと3つのメソッドが存在し必要に応じて使用す…

AngularJS controller asと $watchの指定

github.com 上記のスタイルガイドに以下の様な説明があるのですが Note: controller asを用いたコントローラの中で watch を作成したときは、次のシンタックスで vm.* のメンバを watch することができます。(digestのサイクルに追加の負荷がかかることに注…

GoogleAppsのカレンダーリソースに対して予定の時間枠の権限で予約が可能に

公式ブログで発表されました。 http://googleappsupdates.blogspot.jp/2016/01/book-resources-that-are-shared-as-see.html 予定の時間枠表示の権限でカレンダーリソースに対して予約ができる設定が可能になりました。 ※個人で作成したカレンダーは対象外で…

AngularJS 変更監視 Scope#$watchの補足とScope#$apply

$watchについて以前書きましたがその補足と$applyについてです。 blog.howdylikes.jp 文字列の代わりにfunctionで変更監視対象を直接指定することが可能 と記載しましたがその補足です。 以下のscript内ではwindowオブジェクトのglobalを監視対象としていま…

今年買ったガジェット(電化製品)

5段階評価でいきます。 星3は普通、星4は満足、星5は壊れたら同じor上位品を買う。 Colorio PX-047A プリンタです、確定申告と請求書等に使ってます。 省スペースなのがGood。スキャナーもついてますし、無線で印刷できるし機能は十分です。 ★★★☆☆ YOTAPHON…

AngularJS 変更監視 Scope#$watch、 Scope#$watchGroup、Scope#$watchCollection

リファレンス https://code.angularjs.org/1.4.7/docs/api/ng/type/$rootScope.Scope#$watch $watch 1つのプロパティを監視する $watch(watchExpression, listener, [objectEquality]); objectEqualityをtrueで指定するとangular.equalsを使用する angular.m…

Calendar Resource APIがリニューアル

公式Blogで発表されました。 Google Apps Developer Blog: Introducing the new Calendar Resource API もともとGDATA APIのCalendar Resrouce APIが Directory APIに仲間入りしました。 ユーザーやグループがProvisioning APIからDirectory APIになったとき…

Drive API v2とv3の違い

blog.howdylikes.jp 上記の記事でv3は速い! と書いたのですがfields指定してないしフェアじゃないよなぁと思ってv2にfields入れてみたところv3と同速でした(files.list) 検証 v3で標準で取れる項目をv2のfieldsに指定。 kind, nextPageToken, items(kind,i…

Drive API v3 登場

Drive APIのv3が登場しました。 ブログ記事はこちら レスポンスを削りその代わり速くなったようです。 どれだけ速くなったか試してみる 試しにファイル一覧だけ動かしてみます。 負荷を上げるために1000件で更新日でソートしておきます。 v2 https://www.goo…

AngularJS イベント通知 Scope#$emit, Scope#$broadcast, Scope#$on

$scopeのイベント通知関連の関数は以下の3つがある Scope#$emit 派生元に向けてイベントを送信(自身を含む) Scope#$broadcast 派生先に向けてイベントを送信(自身を含む) Scope#$on イベントを受信 リファレンス https://code.angularjs.org/1.4.7/docs/…

AngularJS $rootScopeと$scopeとthis

$rootScopeと$scopeとthisのメモ $scopeはのプロパティは$rootScopeのプロパティのプロトタイプチェーンとなっているので $scopeに定義されていなければ上へとたどる そのためdeleteで消してやれば$rootScopeを参照することになる。 またController as 記法…

MySQLでレコードのコピーを行う

SQL

主キーと特定のカラムだけ変えてINSERTしたいみたいなケースの話です 普通に以下のようにやればいいんですがカラムが多い時にカラム名を打つのがしんどいですよね。。。 INSERT INTO テーブル名 (SELECT col1, col2 FROM テーブル名) SQL組み立てるためのSQL…

AngularJS ng#injector

ng#injectorについてのメモです 主にAngularJSの外からAngularのサービスを取得などのために使うようです https://docs.angularjs.org/api/auto/service/$injector メソッドは5つあるようです。Module#valueを使ってそれぞれ見てみます get has invoke insta…

AngularJS Module#config Module#runについて

configとrunメソッドについてメモ リファレンス https://code.angularjs.org/1.4.7/docs/api/ng/type/angular.Module#config 仮引数はfuncitonのみ、factoryなどにある文字列とかはない=DIするものではないということですね これらはModule Methodsに位置づ…

AngularJS Moduleについて

AngularJSのModuleには2つのproperty(requires, name)と12のメソッドが存在する模様 https://code.angularjs.org/1.4.7/docs/api/ng/type/angular.Module 以下が12のメソッド よくわからないものもいくつか・・・ provider factory service value constant d…

AngularJS Module定義のエラー

Uncaught Error: [$injector:nomod] Module 'myapp' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument. myappがおかしい module…

Web API The Good Partsを読んだメモ

発売後すぐ買ったのに積読してた本の一つです・・・(汗 Web API: The Good Parts作者: 水野貴明出版社/メーカー: オライリージャパン発売日: 2014/11/21メディア: 大型本この商品を含むブログ (5件) を見る URIの設計方法からHTTPやセキュリティについての…

MySQLで日付の連番レコードを作る

SQL

テスト時のデータ投入とかで便利なのでメモ 例えばこういうデータがほしい時 2015-10-01 2015-10-02 2015-10-03 ・・・ 2015-10-31 SET @from_date = DATE_ADD('2015-10-01', INTERVAL -1 DAY); SET @to_date = '2015-10-31'; SELECT @from_date:=DATE_ADD(@…

Google Appsに管理者の役割を管理するAPIが追加されました

情報元はGoogle Apps Developer Blogです Google Apps Admin SDK: Introducing the Roles API - Google Apps Developer Blog リソースの種類 DIrectory APIに以下の3つが追加されたようです。それぞれ見ていきましょう。 privileges roles roleAssignments …

既にあるDBからMySQLWorkBenchのER図を出力する方法

SQL

以前書いたフォワードエンジニアリングの逆の記事です。 blog.howdylikes.jp DBからER図にする方法になります。 つまりリバースエンジニアリングです。 以下のようなテーブルを用意 CREATE TABLE IF NOT EXISTS `mydb`.`hoge` ( `hoge_id` INT NOT NULL AUTO…

Eclipseメモ

なお使用しているEclipseはMars Release (4.5.0) MacOSです このページは適当に更新する予定。。 Content Assist ctrl+spaceで候補出してくれる系のやつ Java - Editor - Content Assist これを設定することでctrl+spaceを押さなくても出てくるため.を押すま…

Google Appsにドメイン周りのAPIが追加されました

元ネタ Google Apps update alerts 動作確認はしてませんが必要になったときのためにメモしてきます。 プライマリードメインの変更が可能になった API的にはCustomersのpatchでcustomerDomainを変えればprimaryドメインが切り替わるはず ※Domainsの方にisPri…

Google APIのScopeの一覧ページができた模様

元ネタ、情報感謝 Google API の OAuth scope一覧ページが (ようやく) できました! https://t.co/sv4gud3SqM— Eiji Kitamura (@agektmr) 2015, 9月 30 これってAPI Discovery Serviceから取ってきてるのかなぁとふと思ったので幾つか抽出して調べてみました…

MySQLWorkBenchのER図からDBに反映する方法

SQL

ER図に書くのに便利なMySQLWorkBenchですがForward Engineerという機能を使うことでER図からCREATE TABLE文などを作成・反映することができます。 以前の記事 MySQLで履歴テーブルを作る - howdylikes で書いたER図から作ってみます。 Database - Foward Eng…

MySQLで履歴テーブルを作る

SQL

そういう要件があったのでどうしたかのメモ もっと良いやり方あるんだろうけど思いつかなかった。。 サンプル要件 記事を管理する 項目は記事の件名と本文 記事の登録・変更・削除は全て履歴を残すこと テーブル構成 記事を管理するarticleと履歴を管理するa…

Gmailのメールブロック機能をAPIで実現できるか

数日前にメールのブロックを簡単に行うための機能が実装されました。 やり方等は下記のブログがわかりやすいですのでそちらを参照 Knowledge for Google Products: 【お知らせ】Gmailにメールブロック機能が追加! #Gmail APIで同様のことができるかを見てみ…

Drive APIの制限がかかっている場合のエラーと対処方法

Drive APIを使う際に以下のエラーが出る場合はAPIの使用が管理者によって制限されています。 { "error": { "errors": [ { "domain": "global", "reason": "domainPolicy", "message": "The domain policy has disabled third-party Drive apps" } ], "code":…

Google Apps Activity APIの使い方

developers.google.com 本APIはユーザーのAppsの活動状態を取得するためのAPIです。 2015/9/21時点で利用できるのはDriveだけのようです。 Appsとついていますが普通のGmailアカウントでも使えます。 ※似たようなAPIとしてfor work向けにReports APIが提供さ…

Data Transfer API を使ってみる

新APIが公式ブログの方で発表されました。 ※正確にはリリースするよという案内は以前からありました。 Driveのオーナー権限をAさんからBさんのように移すことが可能になるはず。 デベロッパー向けサイト developers.google.com APIのリソースとしてはApplica…

phpMyAdminのエクスポートにはまった話

phpMyAdminでテーブルを全件エクスポートした時のファイルサイズよりも 条件を指定して絞った際のファイルサイズが大きいというありえない現象にはまりました。 テーブルサイズがそれなりに大きい(1.2GB程度)ためファイルを比較することもできず条件をさらに…

Google Apps 監査ログでの Google グループのサポート

公式ブログにある通りグループのログ取得が開始されました。 Google Apps アップデートブログ: 管理コンソール監査ログでの Google グループのサポート もちろんAPIからも実行が可能となっています。 ぱっと見ですが、権限周りや設定周り等細かいログが取れ…

SQLアンチパターン

SQL

SQLアンチパターン作者: Bill Karwin,和田卓人,和田省二,児島修出版社/メーカー: オライリージャパン発売日: 2013/01/26メディア: 大型本購入: 9人 クリック: 698回この商品を含むブログ (42件) を見る 読了しました。 Kindle版が無かったのでオライリー公式…