Skip to content
オープンソース・ワークショップ 永原 篤 edited this page Aug 12, 2023 · 30 revisions

永原のメモ。

Windowsでcomposer requre aws/aws-sdk-php でメモリオーバーが解消しないので、以下で対応
php -d memory_limit=-1 composer.phar require aws/aws-sdk-php

COMPOSER=composer-option.json php -d allow_url_fopen=1 -d memory_limit=-1 composer.phar install --no-dev

middleware から controller へ値を渡す。

request 経由
Middleware/ConnectInit でConfig など取得。この方式を試してイケそうなら、共通的に使用するデータはこの方法へ修正していきたい。

独自のエラーメッセージ

https://readouble.com/laravel/6.x/ja/validation.html#custom-error-messages

  • サンプルはphotoalbumでのmimetypeチェック
// オリジナルメッセージ(image/jpeg, image/png, image/gifのうちいずれかの形式のファイルを指定してください。では、わかりにくいので。)
$error_message = [
    'upload_video.*.mimetypes' => '動画ファイルには、mp4形式のファイルを指定してください。',
    'upload_poster.*.mimetypes' => '画像ファイルには、jpeg, png, gif のうちいずれかの形式のファイルを指定してください。',
];

// 項目名設定
$validator = Validator::make($request->all(), $rules, $error_message);
$validator->setAttributeNames([
    'upload_video.*' => '動画ファイル',
    'upload_poster.*' => 'ポスター画像',
]);

独自のエラー

  • サンプルはsitemanagerでのケース
// 拡張子チェック
if (mb_strtolower($extension) != 'ico') {
    $validator = Validator::make($request->all(), []);
    $validator->errors()->add('favicon_error', '.ico 以外はアップロードできません。');
    return $this->favicon($request)->withErrors($validator);
}

掲示板の仕様

子記事のあるpost はモデレータ以上でなければ更新できない。

全体のフラッシュメッセージ

flash_message_for_add_plugin:フェードアウトあり(名前は今後汎用的なものに変えたい)
flash_message_for_head:フェードアウトなし

Github

  • 特定のコミットを取り込む
    コミット履歴を確認する
    git log
    コミットを取り込みたいブランチに移動する
    git checkout hoge_b
    コミットIDを付与しcherry-pickコマンドを実行する
    git cherry-pick 1 コミット番号

  • 特定のコミットを取り消す
    git revert コミット番号

  • 現在のブランチを表示する
    git branch --contains

PHPUnit

migrate

// テーブル追加
php artisan make:migration create_tablenames --create=tablenames
// テーブル変更
php artisan make:migration add_columnname_tablenames --table=tablenames

HTTP レスポンスコードを元に決めていく。

  1. 情報レスポンス (100–199),
  2. 成功レスポンス (200–299),
  3. リダイレクト (300–399),
  4. クライアントエラー (400–499),
  5. サーバエラー (500–599)

フォーマット

JSON
{
"code":{レスポンスコード},
"message":"{メッセージ}",
"API固有の名前":"{API固有の返答}"
}

Clone this wiki locally