zackey推し

IT系のこと書くぞい

【Django】settings.pyを分割する際の修正範囲

Djangoでローカル・ステージング・本番環境別の設定をどう分割するか、以下の書籍や記事で記述されています。

上記を参考にsettings.pyを分割した際の修正範囲を書き残しておきたいと思います。

  • 修正範囲
    • 環境情報
    • 1. settings.pyの内容をconfig/settings/env.pyへ分割
    • 2. BASE_DIRの修正
    • 3. ローカル・本番環境の設定ファイルを読み込む
  • おわり
続きを読む

【VSCode】python.autoComplete.extraPaths を設定し、外部モジュールのインテリセンスを有効にする

次の職場でDjangoを用いるため、Pythonを使い出しました。

パッケージ管理は以下を使っています。

Ruby / JavaScriptの開発はVSCodeで行ってきたため、PythonVSCodeで書いています。

が、とある設定を加えないと外部モジュールのインテリセンス(コード補完)が有効にならないとわかりました。

この記事には、以下のことをメモしておきたいと思います。

  • Visual Studio Code で、外部モジュールのインテリセンスを有効にする方法

環境

本件は以下環境で設定した手順です。

パッケージ管理はPoetryを使っていますが、Pipenvでもインテリセンスが有効になること確認済です。

インテリセンスを有効にする方法

上記公式ドキュメントに以下のような記載があります。

To enable IntelliSense for packages that are installed in other, non-standard locations, add those locations to the python.autoComplete.extraPaths collection in the settings file

翻訳すると、

標準以外の場所にインストールされているパッケージに対して IntelliSense を有効にするには、設定ファイルの python.autoComplete.extraPaths コレクションにその場所を追加します

とのことです。

そのため、Poetry(などのパッケージ管理)で外部モジュールをインストールしたパスを特定、python.autoComplete.extraPaths に指定すればインテリセンスが有効となります。

手順

まず、外部モジュールのインストール先を確認します。

# 外部モジュール「pygments」を追加
poetry add pygments

# 仮想環境に入る
poetry shell

# REPL起動
(django-rest-tutorial-Gs_Sclct-py3.7) bash-3.2$ python

#  「pygments」のパスを確認
>>> import pygments as p
>>> p.__file__
'/Users/〜省略〜/django-rest-tutorial-Gs_Sclct-py3.7/lib/python3.7/site-packages/pygments/__init__.py'

/Users/〜省略〜/django-rest-tutorial-Gs_Sclct-py3.7/lib/python3.7/site-packages/pygments/__init__.py
/Users/〜省略〜/django-rest-tutorial-Gs_Sclct-py3.7/lib/python3.7/site-packages/
が外部モジュールのインストール先です。

これをVSCodeワークスペース設定ファイル(root/.vscode/settings.json)に追記します。

// root/.vscode/settings.json
{
  "python.autoComplete.extraPaths": [
    "/Users/〜省略〜/django-rest-tutorial-Gs_Sclct-py3.7/lib/python3.7/site-packages/"
  ]
}

これで設定完了です。

動作確認

以下のようにインテリセンスが有効になることを確認できます。

before
f:id:kic-yuuki:20200517175304p:plain

after
f:id:kic-yuuki:20200517175321p:plain

おわり

環境(ワークスペース)ごとに設定必要ですが、ゴリゴリコードを書く方はやっておくと便利な設定かと思います。

注意事項

python.autoComplete.extraPathsに設定する値は、基本環境によって異なります。

また、個人PCの設定情報を公開しないため、.vscode/settings.json.gitignoreに追加しておくと良いです。

# .gitignore
.vscode/settings.json

じぶん Release Notes ver 0.30.6

f:id:kic-yuuki:20200503195330p:plain

2020/04の取り組みの成果を書く。

先月分はこちら -> じぶん Release Notes ver 0.30.5 - zackey推し

  • 学んだこと
      • 読書中
      • 完了
  • 勉強会・コミュニティ
  • プライベート
    • 記事(じぶんリリースノートを除く)
    • PV数
  • Challenge Every Month
    • 2020/04の結果
      • せんべろ日記を書く
      • DesignIt!を読破する
      • CSS設計完全ガイドを用いて、アウトプットをする
      • すぐ分かる音楽理論#5 まで完了する
    • 2020/05の目標
  • おわりと所感
続きを読む

WFH(ワークフロムホーム)中、気分転換になったもの・こと

「ワークフロムホーム中に気分転換になったものを語る | GWアドベントカレンダー」1日目の記事です。


コロナの影響により、政府から外出控えや三密を避ける等のお願いが出ています。

www.mhlw.go.jp

現職でも、上記の要請に協力するため、3月後半から基本在宅勤務の体制に変わりました。

しかし、在宅勤務が長期間に渡る体験は多くの方が初めてで、以下のような悩みを抱えています。

  • 外出できなくて、リフレッシュできない
  • 体が痛い(在宅勤務環境が整っていない)
  • 出退勤のメリハリが薄く、長時間に渡って仕事してしまう

本記事では、上記の悩みに対して、自分が取り組んでいることを記載します。

  • 前提(環境)
  • 仕事中
    • 日光浴&スタンディングで作業
    • ザッソウすることを許容する、時間を設ける
    • 隙あらばバイシクルクランチ
  • プライベート
    • 相席食堂
    • 早朝ジョギング
    • サブスク系を色々試す
      • お菓子のサブスク「スナックミー」
      • ビールのサブスク「CRAFT-X」
  • おわり
    • 参考記事
続きを読む

microCMS のコンテンツ更新のタイミングで Vercel (ZEIT Now) を再ビルド・デプロイさせる

前回は、Gridsome x microCMSを用いた簡単なブログサイトを構築した。

これで npm run build で生成したファイルをNetlify / Vercel等へホスティングさせると、ブログサイトとして公開できる。

しかし、このままではmicroCMSのコンテンツ更新をするたび、Netlify / Vercelのようなホスティングサービスで再ビルド・デプロイしなくてはならない

本記事では、上記の手間を改善するmicroCMS のコンテンツ更新のタイミングで Vercel(ZEIT Now) を再ビルド・デプロイさせた際の手順を書き残す。

  • Vercel (ZEIT Now)とは?
  • 手順
    • 前提
    • 1. Vercel - Deploy用のURL発行
    • 2. microCMS - カスタム通知の設定
  • 所感
  • 参考リソース
続きを読む