WEB制作

1/8ページ

Safariなどのmanifest.jsonに非対応ブラウザに

PWACompatは、manifest.jsonの対応していないブラウザをサポートすることができるGoogle製のライブラリです。 このライブラリを使用すれば、iOSのためにメタタグを羅列したり、スプラッシュスックリーン用の画像を準備する作業から開放されます。 デモ Google Developers デモサイト 実装方法 各ブラウザへの効果 iOS Safari apple-mobile-web […]

http上でのService Workerの動作確認

Service Workerとは Service WorkerはWebページのバックグラウンドで動くスクリプトです。 オフラインでの起動や通知機能を実現することができるので、ネイティブアプリのような実装をすることができます。 通常は、セキュリティの都合上HTTPSでしか動作しません。 ブラウザの対応状況 IE以外のモダンブラウザで動作します。 Service Workerの設定方法 以下のソースを […]

Django フィールドルックアップの使い方

Django Querysetのfilter(), exclude(), get()メソットでは、フィールドルックアップを使って条件の指定などができます。 使用方法 filter(), exclude(), get()メソット内で、「カラム名__ルックアップフィールド名」の形式で使用することができます。 これを使って様々な条件でモデルの絞り込みを行うことができます。 また、複数のルックアップフィー […]

Djangoの組み込みタグでif文を簡潔に書く

Djangoの組み込みタグを活用することで冗長になりがちなif文を簡潔に書くことができます。 firstof False でない最初の変数の値を出力する場合に 以下のように書き換えることができます。 その他応用 for … empty for文で登録内容があるかないかの判定は for … emptyで簡潔に書き換えることができます。 yesno 変数がTrueとFalse(None)のときで切り […]

Django QuerySet APIでTimeFieldの合計を求める

TimeFieldとSum Django QuerySet APIでTimeFieldの合計を普通にSumを使って求めようとすると… 01:00:00, 00:30:00, 00:40:00の合計が17000とおかしな値で帰ってきてしまいます。 TIME_TO_SEC関数 どうもこれは、MySQLのバグらしいのですが、TIME_TO_SEC関数を噛ましてあげると回避できるようです。 なので、Dja […]

PWAをGoogle Playにリリースする方法【PWA2APK】

昨日、PWAをGoogle Playをアップロードできるようになったと話題になりましたが… 実際は、PWAをそのままGoogle Playにリリースすることができるようになったわけではなく、Chrome72で実装されたTWA(Trusted Web Activity)を使用することで、URLバー無しでPWAページを開かせるAndroidアプリを開発できるようになったということらしいです。 しかし、 […]

DjangoでCache Bustingの設定する

静的なファイル群(画像、CSS、JSなど)は、キャッシュ対策(Cache Busting)を行わないとブラウザ側でキャッシュされたファイルが上手く更新されず不具合のもととなってしまいます。 なので、今回は、Djangoで行うことができる二通りのキャッシュ対策を紹介致します。 方法1. ファイル名にハッシュを付加する Djangoには、デフォルトでbase.e352ca3230fc.cssのように […]

Djangoで現在アクセスされているページのURLを取得する

Djangoで現在アクセスされているページのURLを取得する方法です。 view.py ドメインのみ ドメイン+プロトコル パラメータなしパス パラメータありパス パラメータなしURL パラメータありURL Template テンプレート中でアクセスしているURLを表示するためにsetting.pyのTEMPLATESに次の設定を追加します。 ドメイン パラメータなしパス パラメータありパス パラ […]

1 8