tohokuaikiのチラシの裏

技術的ネタとか。

laravel-mixでnpm run watchしたら無限ループに陥ったので対処したこと

何気なくsassを書き直したら、npm run watchしてるのが無限ループしてた… 原因は画像のタイムスタンプ? 原因を探ってみると、 header { background-image: url("../images/icon_header.png"); } が原因っぽい。 試しに、npm run prodしてみると、無事にコン…

Laravelのview(bladeテンプレート)からVue.jsにグローバルパラメータを渡したい時など

最初、 <router-view app_name="{{ config('app.name') }}"></router-view> とかしてたけど、こんなの逐一やってらんねー。 検索したけどあんまり見つからない…ajaxで渡せとかそんな面倒なこと… ということで、「ぼくのかんがえるさいきょうのLaravelからVueへの変数の渡し方」 Laravel 側 Controllerで変数を渡す config('a…

PhpStormでXdebugがつながってるのにブレークポイントで止まってくれない時

./artisan serveだと止まってくれるのにApacheだとブレークポイントで止まってくれないなぜだ!!!??? とずっと思ってました。 色々と困ってる人がいました。 Googleで「file path is not mapped to any file path on server」とか検索すると Debug prob…

MySQLのUNIQUE制約のキー長制限に引っかかった

LaravelのユーザーテーブルのEmailのUNIQUEが掛けられなかった。 Server version: 5.5.65-MariaDB MariaDB Server SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `u…

Vue + Laravelでサブディレクトリに展開する際にやったこと。

Laravel Apacheのhttpd.confにてバーチャルホスト設定にAliasを書く <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName www.example.com DocumentRoot /home/vagrant/htdocs Alias /baccarat_campaign_form "/home/vagrant/laravelapp/public" <Directory "/home/vagrant/laravelapp/public"> Options FollowSy</directory></virtualhost>…

SSOをLaravel+Saml2で行ったところプロキシを挟んだらログインできなくなった。

プロキシだとhttpでアクセスするのでその周りだろうなってことで このあたりでエラーが出ている。 vendor/aacotroneo/laravel-saml2/src/Aacotroneo/Saml2/Http/Controllers/Saml2Controller.php の acs(); の所のエラーが array(2) { ["error"]=> array(1) …

Laravelのファイルアップロードのルートパス

config/filesystems.php に入っているので、 file('foo')->store()する際には、 config('filesystems.disks.public.root'); のpublicが付いてるっぽいので、後で取るといは、 config('fil…

テスト

image/* image/jpeg, image/png image/*" capture accept="image/*" capture="filesystem" accept="image/*" capture="user" accept="image/*" capture="environment"

Laravelのデプロイ

自分用のメモ Laravel自身 composerで関連パッケージをインストール $ composer install autoloadを作成する $ composer dump-autoload .envを作って、migrate $ ./artisan migrate Vue関連のファイルを出力 node_modulesをインストール $ npm install で、…

VueのAjax通信の前後で共通のLoaderを入れる

ajaxの前後でLoading画面を出すやつです。 なんか、スゲー探してようやく見つけた…。 最初、Vuexを使わないようにしてたら全然できなくて、Vuexを使ったら30分でできて時間返してって感じだった。Vuexは恐れずに使え。 main.js import Vue from 'vue'; impor…

Vuejsのコンポーネントを使ってsyncとかデータのやり取り

登録と編集って同じフォームを使いまわすので、Componentにしてあれこれできないかなと思ってたら、意外とデータを親子のVueでやり取りするのが面倒そうで… を参考に。 上記の記事の問題点 なんで、子コンポーネントでまたpropsを定義し直さないと…というの…

axiosでParallel実行する時のエラーハンドリングがよくわからない

axiosで並列して全部終わったら…というやつ。 axios.all([ axios.get('/api/user/'), axios.get('/api/image') ]).then(([res1, res2]) => { this.user = res1.data; this.image = res2.data; }).catch(err =>{ console.log(err); }); ってやると、2つgetし…

LaravelでEthnaのフォームフィルターみたいなやつ

あれな。Inputの時にPOST値を自動的に全角から半角にしてくれたりするやつ。あれ、すげー便利なんだけど、Laravel本体にはないらしい。 waavi/sanitizerをインストール composerにあるので https://packagist.org/packages/waavi/sanitizer $ composer requi…

Vuejsの共通関数の設置

utility.jsとかにして全体で使いたい場合ありますよね。methodsに突っ込みます。 mixin用のファイル作成 my_vue_mixin.js export default{ methods: { aaa(){ console.log('123'); } } } Vueに仕込む app.js import Vue from 'vue'; import myVueMixin from …

traitのメソッドをoverwriteしたんだけど、そのoverwriteされたメソッドを呼びたい場合

php

参考にさせていただきました qiita.com ありがとうございました。 試行錯誤してみる まずは基本となるtraitのAと親クラスBaseを定義

LaravelのRequest->rules()がどの条件で掛かるのか?

が良くわからなかったので追ってみた。 ざっとBreakpointを設置して app->afterResolving(ValidatesWhenResolved::class, function ($resolved) { $resolved->validateResolved();…

LaravelのPolicyで丸二日ほど悩む…効かないってか効きすぎるというか…

やりたいこと apiのrouteに対して適宜認可を掛ける。対象になるのは、usersテーブル。これはLaravelのデフォルトのユーザーテーブル。 show/editできるのは、管理者とその当該ユーザーのみとか。 やったこと routes/api.php で group(function () { Route::r…

俺的な静的Facadeの作り方

LaravelでオレオレUtililyクラスを使いたいと思った。Staticメソッドを自分が使う分だけのもの。 で、Facadeを使うと良いかなと思って、LaravelのFacadeを作り方を調べたんだけど、なんか、ServiceProviderを登録したりFacadeクラスと実行クラスを分けたりと…

LaravelのPolicyを二重にしたらダメだった

$ ./artisan --version Laravel Framework 6.18.26 です。 Policy使ってアクセス制限 こんな感じ。 authorizeResource(User::class); } /** * @param Request $request * @return \Illuminate\Http\JsonRespon…

JetBrainのPhpStormがアップデートに失敗してたのを直した件

PhpStormが自動アップデートするのがずっと失敗するのをずっと放置してたのだけど、やっと直した。 なんか、しょっちゅうこんなエラー出てて「ま、いいか…」としてたんだけど。 Failed to extract packeage.Failed to find 7zip executable in the package a…

今の国会議員の定数

何回聞いても忘れる…小学校の頃に習った衆議院512名、参議院256名は一生覚えてるのに… 定数 (小)選挙区 比例代表 衆議院 465 289 176 参議院 248 148 100

debian10で、DNSをひいてくれなくて困った件

さくらのクラウドでdebian10を作ったのですが、サーバによってDNSが引けなくて困っていた。 現象としては、コントロールパネルからは「推奨ネームサーバ」というのがあり、そのネームサーバーとIPアドレスの上6セグメントが一致しているとダメだった。 こん…

さくらクラウドのAPIを動かすスクリプト作った

APIからシャットダウンとかメモリ増やしたり減らしたり したいなとういうことで。 以下のcomposer.jsonでulrichsg/getopt-phpとsakura-internet/saklientをインストールしてください。 { "name": "vagrant/sakura_cloug_api", "type": "project", "license":…

さくらのクラウドで共有セグメントにつながれた2つのサーバーでsshする

OSはdebian10 共有セグメントから2つぶら下げる感じでサーバーを立てた。1つは本番、1つはバックアップ兼緊急時用。 で、バックアップ用から本番サーバーにsshしようとしたらつながらない…No route to host… ん~。ネットワークのことよく知らないからこの辺…

さくらのクラウドディスクサイズを縮小する。

前提と経緯 さくらのVPS8G→VPS32Gとサービス成長に合わせてマイグレーションした 128Gまで使えるクラウドに移行したい。 でもVPS32Gの1.6Tなんて使いっこないのでパーティションの拡張はずっとしてない ただ、HDDとしては1.6Tなんで節約のために500Gに移行さ…

PHPの関数内で自己再帰呼び出し

php

できるかな?と思ってテスト…

MovableTypeの$__value__に気をつける。

特殊変数のvalue ループで使えるんだけど、 <mt:SetHashVar name="month"> <mt:SetVar name="Jan" value="January"> <mt:SetVar name="Feb" value="February"> </mt:SetHashVar> <mt:Loop name="month" sort_by="value"> <li><mt:Var name="__key__">: <mt:Var name="__value__"></li> </mt:Loop> https://www.movabletype.jp/documentation/…

Let's Encryptがまたまたこけてた。

ブログの記事にするのは3回目。 2020-01-14 certbotがまたこけてた - tohokuaikiのチラシの裏 2019-12-09 Debian10でCertbotがこける - tohokuaikiのチラシの裏 なんか、こういうのがあってあんまりクリティカルかつあまりメンテナンスをしないサーバーではL…

Google AnalyticsのデータをAPI経由で取り出すとか

Google AnalyticsのデータをAPI経由で取り出すとかできるらしい。しかも随分と昔から…Version4ってどんだけ昔からだったんだという… これに従ってやっていきます。 Google Cloud Platformでプロジェクトを作る 最近のGoogleはみんなGoogle Cloud Platformで…

certbotがまたこけてた

certbot renewすると The requested apache plugin does not appear to be installed. Skipping. とエラー出して更新してくれない。 ログ /var/log/letsencrypt/letsencrypt.log を見ると 020-01-12 09:32:53,247:WARNING:certbot.renewal:Attempting to ren…