diadia

興味があることをやってみる。自分のメモを残しておきます。

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

メモ

androidのバックエンドとしてdjangoが使える ソース:https://www.slideshare.net/kaki_k/jaws-ug-geeklab?next_slideshow=1 python-gcmについて android開発にpython-gcmなるものが必要である可能性が出てきた。 これはpush通知に必要な機能だと考えられる…

フッターを画面下に表示させる

参考:https://public-constructor.com/footer-at-bottom-with-flexbox/ 結論 <body > <div class="container-fluid mx-0 px-0 test"> {% include 'config/include/navbar.html' %} {% block content %} {% endblock %} <div class="espacio"> </div> {% include 'config/include/bottom.html' %} </div> .test { display: flex;…</body>

自前のテンプレートタグを作成する

やり方 参考:https://djangobrothers.com/blogs/custom_template_tags_filters/

django-allauth環境下でメールアドレスを変更する

条件 メールアドレスでユーザー認証を行う場合に、UserモデルかEmail Addressモデルのどちらのデータを使ってユーザー認証を行っているかわからない。 またEmail Addressインスタンスを変更するとUserモデルインスタンのEメールも自動的に変更されるのかもわ…

django Userモデルのusernameを変更させる

各ユーザーがユーザーネームを自由に変更できるようにしたい。時間がかかってしまったので記録しておく。 概要 django-allauthを使っている。ユーザー認証及び登録はemailアドレスで行っている。 そのためusernameはemailアドレスの@以前の部分が自動的に割…

django FB, Googleアカウントでユーザー認証を実現する

ユーザー認証を実現するには、いくつかのライブラリがありそれを利用すれば良い事がわかった。 social-auth-app-django django-allauth https://simpleisbetterthancomplex.com/tutorial/2016/10/24/how-to-add-social-login-to-django.html https://scotch.…

https化してみる

django-allauthを使っても実際に運用するとhttpのためにログインページを表示する事ができないことがあった。そのためhttps化させる必要があるとわかった。 参考:https://certbot.open-code.club/ https://narito.ninja/blog/detail/19/ 大雑把な手順 certbo…

textareaフォームの大きさを設定する

textareaフォームを使う際にそのフォームの大きさを設定したいときがある。自分がよく使っているBootstrapではうまく対応できなかったのでその対応できなかった理由と対処方法をメモとして残す。 Bootstrapで対応できない理由 Bootstrapのsizingのところで様…

django 独自のドメインを設定する

freenomでドメインを取得する freenomでは無料でドメインを取得することができる。 取得後にfreenomのmydomainsを開き、Manage Domainを選択する。 Management ToolsからNameserversを選択する。 nameserver1とnameserver2にさくらVPSの情報を入力する。具体…

Django:ModelChoiceFieldを使う

ドキュメント:https://docs.djangoproject.com/ja/2.2/ref/forms/fields/#modelchoicefield 現在困っているのは、Formにdjango.contrib.auth.models.Userオブジェクトを渡してフォームから別のオブジェクトを生成しようと試みているが、form.is_valid()でう…

djangoのformの選択肢を動的に変更する

参考URL http://tt-house.com/2010/04/django-choicefield-choices.html

メッセージフレームワークを使用する

環境 macosx django==2.2 bootstrap4 メッセージフレームワークの使い方 参考:https://docs.djangoproject.com/ja/2.2/ref/contrib/messages/ メッセージを有効にする django-admin startproject によって生成されたデフォルトの settings.py は、メッセー…

django allauthの使い方

インストール pip install django-allauth https://django-allauth.readthedocs.io/en/latest/installation.html allauthの使い方イメージ allauthをインストールすると、urls.py, views.pyや各種テンプレートがインストールされる。INSTALLED_APPSにallauth…

homebrewについて

homebrewをインストール ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brewでパッケージをインストールする brew install package brewでパッケージをアンインストール まだはっきりしていないが、brew unin…

DateFieldをカレンダーwidgetを使って入力したい

DateFieldにカレンダーwidgetを使う理由 期待された形式で入力されないデータはエラーが出てしまう。 カレンダー形式のウィジェットを使えば、上記の問題を避ける事ができる。 参考資料 https://simpleisbetterthancomplex.com/tutorial/2019/01/03/how-to-u…

geodjangoでポリゴンデータを表示したい

前提 モデルにポリゴンデータを格納済みで、views.pyで如何にして表示させるかを焦点とする。 資料: https://medium.com/@h4k1m0u/display-a-polygonized-raster-in-a-django-webapp-1-2-polygonize-a-raster-and-save-polygons-to-the-7779680a029e https:/…

postgresqlをmacosにbrewでインストールする場合について

Brewでインストールする場合 https://docs.djangoproject.com/ja/2.2/ref/contrib/gis/install/#homebrew 下記の方法でpostgresqlをインストールすることができる。 brew install postgresql #$ brew install postgis #$ brew install gdal #$ brew install …

postgresqlをアンインストールする

最近macで開発をするようになってwindowsと勝手が違うことがわかってきた。 少しメモしておく。 windowsの場合インストールしたソフトウエアはコントロールパネルからアンインストーとできる認識でいる。一方、macはアプリをゴミ箱に入れればそれで終了と読…

postgresqlのデータベースがどのディレクトリに存在しているか確認する

ディレクトリを確認する方法 参考:https://dba.stackexchange.com/questions/1350/how-do-i-find-postgresqls-data-directory #psqlコマンド等でデータベースに接続して、、、 SHOW data_directory;

電話番号に最適なDjangoのフィールドは何か

https://stackoverflow.com/questions/19130942/whats-the-best-way-to-store-phone-number-in-django-models どうやらライブラリがあり、それを利用するのが良いようだ。使い方を随時まとめておく。 https://github.com/stefanfoulis/django-phonenumber-fi…

エラー:form.is_valid()の結果が常にFalseになる場合

エラー原因に対する基本的な探索方法 form.is_valid()を実行したあとには、errorsアトリビュートを実行するか、formをfor構文で各要素をprintするとエラー原因を探る事ができる。 if form.is_valid() == False: for ele in form : print(ele) 今回のエラー内…

InputStreamオブジェクトを文字列に変換

InputStreamReaderオブジェクト ドキュメント:https://developer.android.com/reference/kotlin/java/io/InputStreamReader An InputStreamReader is a bridge from byte streams to character streams: InputStreamReaderはバイトストリームから文字ストリ…

kotlinでインターネットに接続する処理

http接続 処理 //接続先のurlを文字列で準備する val urlStr : String = "接続したいurl" //urlの文字列を使ってURLオブジェクトを生成 val url = java.net.URL(urlStr) //URlオブジェクトを使ってHttpURLConnectionオブジェクトを作成 val con = url.openCo…

ListViewの要素をタップしてデータを取得する

ListViewの要素をタップをしたときにデータを取得するコードをどこに書くか コードはオーバーライドしているonItemClickの中に記載する。 データを取得するコードの書き方 val item = parent.getItemAtPosition(position) as MutableMap<String, Any> position getItemAtP</string,>…

ボタンを押すとTextViewに"PUSH"と表示させる

リスナとイベントハンドラの使い方 リスナはイベントが起きるのをじっと待機するもので、イベントハンドラはイベントが起きたと伝達を受けたとき、何らかの処理を起こすもの(何らかの処理は自分がコードを書いて処理を規定する)。 今回はTextViewに"待って…

strings.xmlの内容を表示する方法

TextViewに文字列を表示させる方法 TextViewに文字列を表示させる場合には、画面の表示を担当するxmlにTextViewを配置する。そしてTextviewに表示したい内容をstrings.xmlで決めてあげると表示することができる。.ktファイルは今回はイジる必要がない。.ktフ…

postgresqlにcopyでcsvデータを反映させる

copyを実行する方法 psqlコマンドでデータベースに接続した状態でcopyコマンドを実施する psycopg2でpostgresqlに接続し、copy_fromメソッドを使ってcopyを実施する。 copy_expert(), execute() できないこと、注意点1 csvファイルの指定カラムのみをテーブ…

DB設計について

テーブルの設計について学習している。 メモを残す。 テーブル設計には正規化という概念が重要らしい。正規化には5つの種類がある。通常は3つまでチェックして修正すれば良いらしい。 第1正規形の定義:1つのセルの中には1つの値しか含まないこと 第2正規形…

ある座標点からxkm以内に存在するデータオブジェクトをmapに表示したい

PostGISを使う場合はST_DWithin()関数を使えばよいだろう。 ではgeodjangoではどうやって特定の範囲内のデータオブジェクトを取得するか? psycopg2を使ってデータオブジェクトのみ取得することももやり方としてはできるだろう。 しかしここではgeodjangoの…

unittestのsys.exit()の抜け方

def tashizan(a,b): try: return int(a)+int(b) except ValueError: print("a,bは整数ではなく文字列の可能性があります") sys.exit(1) import unittest , tashizan class TestTashizan(unittest.TestCase): def test_tashizan_1(self): expected = 8 actual…