2020-01-01から1年間の記事一覧

Django Rest FrameworkのSerializerでModel FieldをNot Requiredする方法

やりたいこと 以下に定義するModelについて、Not NullなフィールドはフォームやRESTでも必須じゃなくしたい。 class ExamTr(models.Model): class Meta: app_label = 'exam' id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) v…

【解決】OAuth2.0でinvalid_grant: Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. と言われる

起きたこと GoogleAPI(Analystics)を使おうとOAuth2.0で認証しようとしたところ以下のエラーが発生 invalid_grant: Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. Check your iat and exp values in the J…

【解決】TinyMCEでPOSTしようとすると「An invalid form control with name='text' is not focusable.」と言われ何も反応しない

今日はフロントエンドネタです。 起きたこと 自作ブログサイト用のダッシュボードで投稿画面のエディタにTinyMCEを採用したのですが、 実際に導入して日本語化までしたはよいものの、 フォームに組み込んでいざSubmitしようとすると何も反応しない、というこ…

【解決】sphinx-build時に「doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.」と言われる

起きたこと djangoのソース(docstring)をsphinx-buildすると以下のエラーが起こりました。 WARNING: autodoc: failed to import module 'views' from module 'blogs'; the following exception was raised: Traceback (most recent call last): File "/usr/l…

JenkinsパイプラインからSkaffoldでCI/CDしてみる

今回はDevopsネタです。 JenkinsパイプラインからSkaffoldを使ってアプリケーションをCI/CDしてみます。 前提 Kubernetesクラスタが構築されていることが前提です。 JenkinsはHelmを使って導入します。 Kubernetesクラスタの構築(オンプレ-kubeadm)方法は…

GrafanaからSlackへ通知する

今回はメトリクス可視化ツールのGrafanaからSlackチャンネルへ通知を送る方法です。 Grafanaとは Grafanaとはオープンソースのダッシュボードツールです。 いわゆるメトリクス可視化ツールです。 Grafanaは、マルチプラットフォームのオープンソース分析およ…

CentOS8にSkaffoldを導入する

今回はCentOS8にSkaffoldをインストールして、kubernetesクラスタへデプロイしたいと思います。 はじめに SkaffoldとはGoogleが提供するkubernetesネイティブなアプリ開発をするための支援ツールです。 Skaffoldは、Kubernetesネイティブアプリケーションの…

【解決】The file will have its original line endings in your working directory

Git

事象 Gitローカルリポジトリに新規ファイルを追加しようとしたら以下のような警告が発生。 git add -A warning: LF will be replaced by CRLF in kubernetes/docker_dev/Dockerfile. The file will have its original line endings in your working director…

Fluxでk8sをGitOpsしてみる

はじめに 今回はコンテナ仮想化プラットフォーム「docker」のオーケストレーションツールである「Kubernetes(k8s)」の話。 k8sを運用する場合に、マニフェストだったりdockerイメージだったりをリポジトリで管理すると思うのですが、 その際に出てくる考え…

Amazonから「サインインが検出されました」という通知が届く

今回はAmazonアカウントへの不正アクセスについてです。 不審な内容の通知が あるとき以下のようなSMSが私用携帯に届きました。 「おや?」と思ってEメールを確認すると同じようなメールが。 さらに同デバイスに入れてるAmazonショッピングアプリからも同じ…

Flutterの開発環境を構築する for Windows10/VSCode/Android

はじめに 今回は最近話題のクロスプラットフォーム向けフレームワーク「Flutter」を使ってAndroidアプリを作ってみます。Flutterって何?という方はこちら。 Flutter - WikipediaFlutter自体はiOS、Androidの他にWebやデスクトップ向けのアプリ開発もできる…

【解決】jQuery3.5.1でfadeOut()が使えない?

jQueryでローディング画面を作ろうと思って、 ロード後のフェードアウト処理を function stopload(){ $('#loaded').css('display','block'); $('#loading').delay(200).fadeOut(100); } みたいな感じで書いて実行すると、以下のエラーが発生した。 $(...).fa…

Windowsの画面ロックを回避する

テレワークということもあり、セキュリティを考慮して特定時間が経過すると強制的に画面ロックならびにシャットダウンがされてしまう端末で仕事をしているが、やはりいちいちロックされるのは面倒くさい。 定期的にキーボードから自動入力する方法はないかな…

Python の引数に * (アスタリスク) のみ指定されているのは何なのか

djangoのget_context_dataのソースを見ると def get_context_data(self, *, object_list=None, **kwargs): のように、引数に「*」のみが指定されているパターンがあった。 これなんだろうって思って調べてみたら、以下のような記載を見つけた。docs.python.o…

【解決】Cannot filter a query once a slice has been taken.

htmlの中でタブを使って色んなフィルタリングパターンのテーブルを見せるために、 そのパターンごとにデータを渡したかった。 (クライアント側でデータをフィルタリングすることもできるのかもしれないけど面倒くさかった…)そこでviews.pyの中でこんな風に…

【解決】object has no attribute 'object_list'

Djangoの汎用ビューの話。 TemplateViewを使用して継承元となるビューを作成して、 それとgeneric.Listviewの両方を継承させたオリジナルリストビューを作成したら以下のエラーが発生。 object has no attribute 'object_list'調べたところ、マニュアルには…

Djangoのtemplateのurlでクエリパラメータを渡す

悩み 以下のようなタブ切り替えをしたいときに、 パスではなくてクエリパラメータで内容を変えたい。 (urls.pyの内容を変えたくない) <ul class="nav nav-tabs"> <li class="nav-item"> <a href="{% url 'accounts:list' public%}">公開済み</a> </li> <li class="nav-item"> <a href="{% url 'accounts:list' draft%}">下書き</a> </li> <li class="nav-item"> </li></ul>

【CSS】ブロック内で文字列を折り返す

こんな風にブログサイトの中で、各記事のダイジェストを作ろうとしていたらタイトルが横にはみ出してしまった。 なんとか写真の幅で折り返したい。 ちなみにダイジェスト部分はトップ画、投稿日、タイトル、記事ダイジェストの4要素をGrid Layoutで縦に並べ…

【解決】 django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.

事象 コンテナのPythonとDjangoをそれぞれ最新化(2.6.0→3.8.0、1.1→3.0)して、 docker build後にrunserverすると以下のエラーが発生。 django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.APサーバ側…

【解決】ModuleNotFoundError: No module named '_ctype'

事象 docker buildするときの pip install uwsgiで以下のエラーが発生。 ModuleNotFoundError: No module named '_ctype' 解決策 libffi-devを入れることで解決 dnf -y install libffi-dev

【解決】JupyterLabからデータを生成しようとするとSynchronousOnlyOperationエラーが起きる

JupyterLabからテスト用のデータを作成しようとしてエラーになったのでメモ。 以下のようなテスト用のデータを生成するコードをJupyterLabで実行。 import random, string import uuid import datetime def randomname(n): randlst = [random.choice(string.…

【解決】コンテナ内で'AppStream'からmetadataがダウンロードできない

docker buildする際に躓いたので書いておきます。 Dockerfile内でdnf upgradeする際に最初にリポジトリからメタデータをダウンロードしてくるのですが、 AppStreamリポジトリからダウンロードが失敗してしまいます。 # dnf upgrade Failed to set locale, de…

django(python3.6)でcreatesuperuserするとUnicodeEncodeErrorが発生する

久々の記事です。 今まで備忘録をサボっていましたが、やはり都度記録に残すことが大事だと思いなおし、Djangoの勉強がてら、躓いた小さな石から大きな石まで記事に残そうと思います。というわけで、1年前につくったアプリを久々に触ろうと思いDBコンテナを…

Brocade VDX 6740を触ってみた

こんにちは、くらうとです。 今回はネットワークスイッチのお話。もう5年以上前の話ですが、ヘルプ業務で触る機会があり せっかくなので書き残しておきます。 そもそもネットワークスイッチとは何か ggると以下のように出てきます ネットワークスイッチとは…