カテゴリー別アーカイブ: Laravel

【Laravel】DataTablesにプルダウンをちょっと強引に組み込む

Laravelのblade内で、DataTablesを使ってたんだけど
td の中にプルダウンを設置したくて、
どうにかできないかと

もっとよい方法がありそうだけど
とりあえずこれでしのいだ

【Laravel】ajax で POST通信

Laravel で ajax の POST通信をしようとしたところ
エラーとなったのでその対処方法をメモメモ

HTMLのどっかにmetaタグでcsrf-tokenの文字列を記載。

あとは、ajaxのところで、headerにこの値を
セットすればOK!!

ついでに時間がたったら更新しておく

【Laravel】キャッシュクリア

Laravel使ってて
.envファイルとか更新したのに
反映されなかったりするのは
すべてキャッシュのせいだー!

コマンドラインで
これをたたけば解決なり!

【Laravel】Console\Comands でパラメータを渡す

Console\Comands でバッチプログラムを作成したときに
パラメータを渡す方法をメモメモ

2つあって

もうひとつは

両方ともパラメータなしでも実行できる

【Laravel】Gmail のSMTPを利用してメール送付

なんとなくやる機会があったので
いちおう忘れないようにメモメモ

まずは composer で phpmailer をインストール

https://github.com/PHPMailer/PHPMailer

あとはこんな感じ

【Laravel】mysqlのCSVインポートでエラー

Laravelで、mysqlにCSVファイルをインポートしようとしたら
エラーになったので、そのときの対応をメモメモ

CSVの読み込みはこんな感じ

そうすると
こんなエラーや
string(420) “SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.

こんなエラーで怒られる、、、
PDO::exec(): LOAD DATA LOCAL INFILE forbidden

コンソール画面から直接SQLを実行するといけるのに

config/database.php に
下記2行を追加してあげたらうまくいった
PDO::ATTR_EMULATE_PREPARES => true,
PDO::MYSQL_ATTR_LOCAL_INFILE => true,

【Laravel】新規作成時のパーミッション設定

Laravelで新規にサイト作ろうとすると
パーミッションで怒られるはず、、、

やり方は、いくつかあるけど
この方法が自分好みなので、メモメモ

おおざっぱな手順
 ・[laravel] グループを新規に作成して
 ・[apache] など必要なユーザを [laravel] グループに追加する
 ・[storage] 配下 の所有グループを [laravel] に変更
 ・新規で作成されるファイルのパーミッションを指定

以上!

【Laravel】バッチのログファイルを別に書き出す

Laravel でバッチ処理を作ってたんだけど、
ログを吐こうとすると、
storage/logs/ 配下の larabel-xxxx-xx-xx.log ファイルに
全部まとまられてしまって、管理しづらいので
別に書き出す方法をメモメモ

いろいろ方法はあるみたいだけど
これが一番簡単にできたので採用!

手順は2つ

1.config/logging.php のchannels に、’daily’ をコピッてひとつ追加

2.該当の処理でログを書き出す

あと、キャッシュ削除しないとうまく動かないかも

Laravel SQL高速化

Laravelで大量データを取得するときに
結構遅くなった&メモリエラーを起こすことも
あったので調べてみたのでメモメモ

cursor() ってのを使うとよいらしい

使い方もこんな感じで簡単!

ただメモリをもっと減らしたい場合は
chunk()の使用も検討したほうがよいらしいが、、、