diadia

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

CircleCIのメモ

CircleCI環境変数について circleciの環境変数の定め方は2通りある。 一つはconfig.ymlで環境変数をハードコーディングで定める方法である。 もう一つはcircleciのコンソールで環境変数をキーとバリュー形式で登録しておき、config.ymlでキーを呼び出すこと…

vuexのコンポーネント間のデータ受け渡し方法

vuexのデータの受け渡しはvuexのドキュメントを読めばだいたいのことがわかる。 vuexはVue.js アプリケーションのための 状態管理パターン + ライブラリである。 重要なファイル 最初はApp.vueとstore/index.jsだけで済む。 <template> <v-app> <v-app-bar app color="primary" dark > <div class="d-flex align-center"> </div></v-app-bar></v-app></template>

dockerのvolumeがホストのどこにあるのか

Dockerのvolumeがホストのどこに存在するか知りたい。 docker-compose.yml内で以下のように記述することに関していままで自分が勘違いしていた。 db: image: postgres volumes: - postgres_data:/var/lib/postgresql/data <-コレ environment: - POSTGRES_DB…

docker nginxの基本的な使い方

dockerを触ってみて分かったこと。 dockerのコマンドを使ってimage作成やコンテナを実行する。 これとは別に、つまりdockerコマンドを使ってimage作成する代わりに、Dockerfileを作ってdocker buildコマンドを使うとimageを作成する事もできる。 ここに関し…

django vueを追加する

MPAでvueを使いたい。。。 色んな方法で実現できると分かった。 cdnを使う方法 vue cliを使う方法 vue cliを使わないで行う方法 最終的にはvue cliを使って構築するのがわかりやすいと感じた。cdnはもちろんかんたんだけれどもvuetifyを組み合わせて使う方法…

constants.pyを設けるメリット

djangoでconstants.pyを設けるメリット views.pyやurls.pyまたテストにおいてハードコーディングが少なくなる。 urls.pyにおいてviewネームを変更するとviews.pyの該当するreversやreverse_lazyのハードコーディング部分を探して変更する必要が出てくる。 し…

vue.jsのメモ その2

データバインディングとは データと描画を同期する仕組み データバインディングの種類 双方向バインディング (TwoWay) 単方向バインディング(OneWay) ワンタイムバインディング(OneTime) テキストのバインディング テキストのバインディングの場合には{{}}…

node.jsのインストール方法(mac)

参考資料 Node.jsをmacOSへインストールする方法 | プログラミング入門ナビ MacにNode/npmをインストールする手順 2019年1月更新 - suzu6 nodejs,npmインストールしてみた感想 macでnpmを使うには、まずnodejsが必要になる。これはnodejsにnpmが含まれている…

Fragmentの画面が表示されない状況に遭遇した

ベースとなる画面にリサイクラービューを使って表示する。 そして画面遷移先で入力するためのキーボードを表示させる。その状態でベースのアクティビティに戻るとリサイクラービューを始め他のViewもろとも表示されない事態に遭遇した。いわば、レイアウトフ…

android ライフサイクルについて考え、想像するだけ

ライフサイクルはメモリ不足になるとonResumeを通ることを予期していたのにonCreateから始まることがあるようだ。 もしかするとアクティビティでフラグメントを起動して、そこから他のアクティビティに遷移する。遷移先からバックで戻ったり、アクティビティ…

Django Test retrofitが送信するデータを再現する

内容 djangoの単体テストを実装する際にAndroid端末が送信するデータ形式を再現できなければ、単体テストの効果が得られない。 したがって最初にretrofitのpostメソッドの形式を確認し、それをそれぞれどのようにdjango(python)で再現すればよいかをメモして…

言語横断整理 python, kotlin, javascript

配列、リスト オブジェクトの生成 pythonにはListがある。 foods = ["りんご", "ぶどう", "すいか", "なし"] foods = list("りんご", "ぶどう", "すいか", "なし") kotlinにはList, Array, ArrayListがある。 var foods:List<String> = listOf("りんご", "ぶどう", "</string>…

Vue.jsの最初のメモ

内容 ドキュメント 基本的な使い方 vueの内容の書き方 1.ドキュメント https://jp.vuejs.org/ 2.基本的な使い方 HTMLとjavasciptのパートがあり、それを書けばvue.jsを書いたことになると現状認識している。 HTMLで書くこと https://jsfiddle.net/5grs0976/1…

Dockerについてメモ

よく使うコマンド docker-composeコマンドを使ってサービス立ち上げ docker-compose -f docker-compose.yml up -d --build サービスを終了する docker-compose -f docker-compose.yml down -v 立ち上げたサービスを使ってテストを実行する(django) docker ex…

android facebookシェアのメモ

前提 intentやShareCompatを使ったシェア方法を諦め、facebook SDKを使ってシェアを行う。 メモ とりあえず使うにはコーディングの他に準備がある。 まずFacebookに開発者の登録が必要 facebookにアプリの登録が必要 -> appのidがandroidのマニフェストで記…

Seleniumを使ったテストのメモ

実装の際に困ったこと django.test.LiveServerTestCaseを使う環境を把握できていなかった。 ヘッドレスモードを使う場合にはオプションに--window-sizeをつけなければならないこと。 前提 ChromeDriverを使ってseleniumを実行する 準備 seleniumをインストー…

djnago test ModelFormにForeignKeyが含まれる場合のテスト

例えばItemモデルにCategoryというForeignKeyが含まれているとする。 その上ForeignKeyオブジェクトから選択させる方式でItemオブジェクトを生成している。 Itemオブジェクト生成のためにItemModelFormを作成すると以下のような感じになる。 class ItemModel…

WebViewの使い方

コンテンツ ドキュメント 実装方法 サンプルコード 1.ドキュメント WebView でのウェブアプリの作成 | Android デベロッパー | Android Developers 2.実装手順 レイアウトでアプリに WebView を追加 <WebView android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" /> val myWebView: WebView = findViewById(R.id.webview) m</webview>…

DRFとretrofitの関係(Bodyに関して)

話したいこと drfのrequest.dataの内容はfieldかbodyかで違いが出る話をしたい。 django rest frameworkを使ってアンドロイドからデータを受け取る場合にはrequest.dataを使う。そしてこのrequest.dataの内容がretrofitのインターフェースメソッドの記述の仕…

Kotlin GoogleMapPlatfotmのtoolbarを削除する

どれ? toolbarの特徴 toolbarはデフォルトで表示され、toolbarをタップすると他のアプリが起動してしまう。 消したい場合はドキュメントに従ってUiSettings.setMapToolbarEnabled(boolean)を実行すれば良い。 サンプルコード override fun onMapReady(googl…

Django シグナル POST_SAVEのupdate_fieldsをどう使うか

シグナルpost_saveのupdate_fieldsの用途 例えばこんな時に使いたい時にupdate_fieldsが役に立つ。 class Profile(models.Model): user = models.ForeignKey(User, on_delete=models.PROTECT, null=True) adm0 = models.CharField(max_length=15, default="J…

FirebaseCloudMessagingによるプッシュ通知を受信してもアプリを起動できない件

理由がわからない。 サンプルで作ったアプリはプッシュ通知をタップするとアプリが立ち上がったけど、今のアプリは立ち上がらない。 Firebase Notifications は、受信側アプリがフォアグラウンド状態であるかバックグラウンド状態であるかによって、動作が異…

テスト(ソフトウェアテスト)について

ソフトウェアテストとは、開発者の意図したとおりにソフトウェアが動作するかを検証する行為である。 ソフトウェアテストには種類がある。 テスト名 説明 ユニットテスト メソッド単位のテスト 統合テスト メソッドの組み合わせのテスト UI/システムテスト …

スワイプでデータ更新をする

SwipeRefreshLayoutを使えば良い事がわかった。 GlidやLinearの親としてSwipeRefreshLayoutを使う。 参考ドキュメント スワイプでの更新をアプリに追加する | Android デベロッパー | Android Developers 参考ドキュメントによるとsupport.v4を使うことにな…

RecyclerViewでスクロールダウンしてから上に戻ると表示がおかしくなる件

リサイクラービューで上から下にスクロールする時には適切に表示されているのに、 一度下までスクロールして上に戻ると、適切に表示されていたものが変な状態で表示される件に遭遇した。 具体的に自分のケースでは、if文に合致したあるアイテムはグレースケ…

Glideの使い方

内容 普通にGlideを使いたい場合 -> Glideを使う場合の諸設定 GlideAppを使いたい場合 -> GlideAppを使いたい場合の諸設定 Glideを使う場合の諸設定 gradleに以下を設定 dependencies { implementation 'com.github.bumptech.glide:glide:4.11.0' annotation…

Android端末の通信中にクルクルを表示したい

通信中にクルクルを表示するための機能はProgressDialogとProgressBarがあるようだ。 ProgressDialogはAPI26で非推奨になるらしい。 ProgressBarを使うことになるのか? 2種類あるみたい。 Determinate ProgressBar Indeterminate ProgressBar

ssh接続が遅い場合の対処法

virtual boxにssh接続した結果パスワード入力から認証まで時間がかかり、timeoutになってしまってログインができなかった。(visual stadio code) この問題に劇的に改善が見られたのはsshd_configファイルのUseDNS=noに変更することだ。 手順を完結に記述して…

Djangoのテストを実装

分かったこと djangoでテストする項目がわかった。 どんな感じでdjangoのテストを書くのか分かった。 djangoのテストはどんな種類か フレームワークの種類によってTestが準備されていることが分かった 分かったことを軽くまとめる ふわっと理解する テストは…

ギャラリーのデータを引っ張るには?

参考資料 androidドキュメント ストレージ アクセス フレームワークを使用してファイルを開く | Android デベロッパー | Android Developers わかりやすい アンドロイド - SAF(Storage Access Framework)にファイル読み書きする方法 | codechacha [Kotlin] R…