絞り込み条件を変更する
検索条件を絞り込む
有料ブログの投稿方法はこちら

すべてのカテゴリ

39 件中 1 - 39 件表示
カバー画像

システムの開発及び構築の相談・改修と幅広くお手伝いします

ご覧いただきありがとうございます! 要件定義・設計・実装・テスト・リリース・技術相談と幅広くが対応可能でございます。 LaravelやStripeなどの決済システムや外部APIの実績も多数ございますので、まずはお気軽にお問い合わせください。 迅速丁寧な対応を心がけておりますので、よろしくお願いいたします。 『例』  →Webシステムの開発のお手伝いをしてほしい →HTML・CSS・Javascriptを使ったWebサイト作成・修正 →既存システムの修正・機能改修をお手伝いしてほしい →Webサービスの仕様・設計をお手伝いしてほしい その他ご相談承ります。 『対応実績』 →Laravelを使用したAPIの開発 →Stripeを使った決済機能の追加 →外部APIを使ったシステム開発 →テーブル設計 【 対応言語 】 ・PHP/Laravel ・HTML/CSS ・Javascript/Vue.js/Nuxt.js・Python(Django or Flask)・Java(SpringBoot)
0
カバー画像

僕がDjangoによるバックエンド開発に関わった音声メモアプリがサービス公開した話

久しぶりの投稿なので簡単に自己紹介すると、最近は主にGPT-3 (生成AIのAPI)を使ったWebアプリケーション(Django)開発や、それを解説した技術ブログの寄稿を主にやらせていただいておりますべナオと申します。今回のブログでは、ココナラさんで実際に仕事をお受けした時の体験談を、そこまでの経緯も合わせて紹介したいと思います。想定する読者さんは、以下のような方です。 ・「Pythonエンジニアの働き方に興味がある」 ・「Pythonエンジニアの普段見れない裏側を知りたい」 ・「暇つぶしにべナオの記事でも読んでみるか」1. 外部サイトでPythonの記事を3年書き続けていたらネットで依頼が来るようにもともとは外部の某ブログサイトでPythonの技術ブログを趣味で書いていました。扱うテーマはチャットボットや機械学習やSNS分析などです。始めた当時(4年前)は今ほど日本のPythonエンジニアが多くなかったので、ネットで公開するだけでPVが伸びていたのを覚えています。それからも自作のプログラムを中心に、技術ブログを数ヶ月おきに書いてきました。ほとんどのnoteは無料で、自分の知識の整理やSNSを介しての他のエンジニアの方との交流を目的として地味に続けてきました。 知り合いのバーを借りて、エンジニア向けの交流会を開いてパスタを自分で作ってお客さんに出していたりもしました(料理は今でも好きです)。 そんなこともあってTwitterで少しは目立っていたのか、IT系の方にフォローされることが増えていきました。そこでこんなことを思いついたのです。 「これだったらネットで仕事を受ける窓口さ
0
カバー画像

PythonでWebアプリ開発なんてできるの? 【フリーランスエンジニアが答えます】

ブログを開いていただきありがとうございます。フリーランスエンジニアのベナオと申します。ココナラさんでは主にPythonを使ってコーディングやアプリケーションの開発を承っております。Web開発ではPHPやRubyなどが一般的じゃないの? という方も多いと思います。この記事ではそんな方のために、PythonがWeb開発に使われ始めている理由を解説したいと思います。1. 機械学習技術の普及からPythonユーザーが増加昨今ではAmazonからNetflixまでありとあらゆるWebサービスに機械学習による推薦システムが組み込まれています。これは2013年頃からのディープラーニング技術のブレークスルーによるもので、Web開発に使われるフレームワーク(プログラミング言語毎に用意されているテンプレートのようなもの)もPythonのものを使う開発者が増えています。これはStackOverFlowというプログラミングの質問サイトが公開しているデータで、月当たりの各フレームワークに関する質問数の推移を比較したものです。それぞれruby-on-railsはRubyに、djangoはPythonに、laravelはPHPに用意されているWeb開発フレームワークです。ご覧通りに2013年からdjangoに関する質問数が右肩上がりになっているのが分かります。現在はDjangoがlaravelを抜いていますね。これは世界的なトレンドですが、日本にも遅れてこの流れがやってくることが予想されます。2. あのInstagramにも使われているDjangoそれでは実際にDjangoはどんなWebサービスの開発に使わ
0
カバー画像

Django , Apache接続(ローカル接続)

Apacheの conf ############ Python Django 用設定 追加 ############ LoadFile C:/Users/natsume/AppData\Local/Programs/Python/Python39/python39.dll LoadModule wsgi_module C:/Users\natsume/AppData/Local/Programs/Python/Python39/Lib\site-packages/mod_wsgi/server/mod_wsgi.cp39-win_amd64.pyd WSGIPythonHome C:/Users\natsume/AppData/Local/Programs/Python/Python39 WSGIScriptAlias / D:/Django/django_project/django_project/wsgi.py WSGIPythonPath D:/Django/django_project/django_project <Directory D:/Django/django_project/django_project>   <Files wsgi.py>     Require all granted   </Files> </Directory> Alias /static/ D:/Django/django_project/static <Directory D:/Django/django_project/
0
カバー画像

Django 内部結合 SQL views.py

from django.shortcuts import render,get_object_or_404, redirect from django.http import HttpResponse from django.views.generic import ListView from django.db import connection import psycopg2 # Create your views here. #list def index(request): sqltext="""SELECT a.id , a.empid , a.empname , a.deptid , a.mailaddress , b.deptname , b.upperdeptid FROM joinquery_employee a INNER JOIN joinquery_department b on a.deptid=b.deptid ORDER BY a.id ; """ emplist=exec_query(sqltext) return render(request, 'joinquery/index.html',{'emplist':emplist}) def exec_query(sqltext): with connection.cursor() as cursor: cursor.execute(sqltext) """ 一行ずつ取得 get_arr = for row in cursor: get_arr.append(row) print(get_arr[
0
カバー画像

Python スクレイピング(requests, BeautifulSoup) メモ 01

import requests from bs4 import BeautifulSoup import tkinter url = 'ターゲットURLをにゅうりょく [夏目 智徹]' site = requests.get(url) site.encoding = site.apparent_encoding # 文字化け対策 data = BeautifulSoup(site.text, 'html.parser') data_02 = BeautifulSoup(site.text, 'html.parser') data_03 = BeautifulSoup(site.text, 'html.parser') print(data.title) # printf(data.title.text) print(data.title.text) # テキストだけ取得 # print(data.find('a').text) # print(data.find('p').text) # print(data.find('a').text) print(data.find_all('img')) #すべての「a」タグを出力する print(data.find_all('p')) #すべての「a」タグを出力する print(data.find_all(id='sysDescription')) #id属性「id_name」に一致するタグを出力する # arr_item = data.find(id='sysDescription') # print(data.find(c
0
カバー画像

SQLite データベースを Django でどう使うか?

SQLite データベースを Django でどう使うか?Django で標準設定のデータベースとして利用されている SQLite ですが、実際にシステムとして稼働する場合には置き換える場合が多くなっています。何故でしょうか?この記事では、SQLite について簡単にまとめてみました。 SQLite データベース最初に、SQLite データベースについて簡単にまとめておきます。 プログラム開発、特に Web 系の開発で SQL データベースは利用する機会も多いですし、よく耳にする名前です。 その名の通りデータベースの一種ですが、「SQL(Structured Query Language)」を使ってアクセスするデータベースです。SQL は一種のプログラミング言語のようなものですが、データベースとデータをやり取りする際に使われます。データを追加、更新、削除を行うための記述ですが、かなり複雑なデータの扱い方もできます。代表的な SQL データベースには、MySQL、PostgreSQL、Microsoft SQL Server、そして今回取り上げている SQLite などが挙げられます。その中で、SQLite はその名の通り、「軽量」のデータベースとして Django などでも標準設定になっています。Django で標準設定になっていますが、多くの Django アプリをインターネットに公開して実際に稼働させる際には別の SQL データベースに置き換えることが多いのは以前の記事で紹介した通りです。何故 Django で標準設定になっているか?公開する際には置き換えることが多いのに何
0
カバー画像

Django をホスティングするサーバーの性能

Django をホスティングするサーバーの性能通常の一般的な Web サイトをホスティングする場合、サーバー側の負荷は比較的軽い場合が多く、通常の Web ホスティングでは余り高性能のサーバーを利用するケースは少なくなっています。 Django を利用したアプリを考えた場合、サーバー側でデータ処理をする機会も多くホスティングをする際のサーバーの性能も気になるところです。この記事では、Web ホスティングをするサーバーの性能についてポイントをまとめてみました。一般的な Web ホスティングの処理まず最初に一般的な Web ホスティングの処理を考えてみます。 一般的な Web サイトのホスティングで必要な処理は、HTTP のリクエストの処理です。 Web ブラウザからの HTTP リクエストを受けて必要なページの情報を返送するというのが主な処理です。 特にバックエンドの処理がない場合は、一つの処理に要する時間は、せいぜいミリ秒程度の時間です。従って余程処理が集中しない限りサーバーには余り負荷がかかりません。多くの、低価格の Web ホスティングでは、サーバーとして仮想マシーンを割り当てて、最小限の CPU とメモリを割り当ててサービスを提供するケースが多くなっています。基本的に、HTML や CSS などのファイルや、ページに貼り付けてある画像情報などを送るだけなので、余り CPU に負荷がかかる処理はありません。ブログなどのサービスでバックエンドでデータベースを動かす場合は、データベースの処理が入ってくるので多少 CPU の処理も必要になりますが、通常はシンプルなテーブル構成とク
0
カバー画像

Docker 上で Django アプリを動かす

Docker 上で Django アプリを動かすDocker 上で Django のアプリを動かす一番シンプルな方法を紹介します。一応、データベースは、標準設定の SQLite ではなく、PostgreSQL を利用するようにしています。今回紹介する内容今回は簡単にするために以下の条件で Docker 上に実装します。* 開発用のサーバーを利用* データベースに「PostgreSQL」を利用* Django アプリはデモ用(テンプレート)Web サーバーとデータベースの2つのイメージを利用して Django のアプリを動かします。設定には、「django-compose」を利用します。Docker Compose の準備Docker はインストールされているという前提で、ここでは、「docker-compose」をインストールする方法を紹介します。 インテルベースのシステムの場合、特に問題はないのですが、今回、M1 Mac 上で動作している仮想マシーンの Linux(Ubuntu ARM64 版)でインストールをしようとしたところ、うまく行きませんでした。最終的にインストールする方法として、「pip3」を使うとうまく行くことがわかりました。 (*)インテルベースの場合は、インターネットに資料がたくさんあるのでここでは ARM64 ベースの場合を紹介しています。user@ubuntu:~/Documents/blog/docker-django-sample$ sudo pip3 install docker-compose インストールは以上で完了です。 インストールが正常に行
0
カバー画像

Docker で Django アプリを動かす

Docker で Django アプリを動かす前回までに、仮想マシーンの Web サーバー上で Django のアプリを稼働させる方法を紹介してきました。実はここまでは「前置き」です。これから何回かに分けて Docker を利用して Django のアプリを動かす方法を紹介していきます。何故 Docker を使うか?これまで紹介した仮想マシーンはとても便利です。実際に使用している PC とは別にパッケージをインストールしたり、異なった環境を簡単に作って試すことができます。現在主流のシステムの仮想技術には、大きく2つの方法が使われています。* ハイパーバイザー(Hypervisor)を利用した仮想マシーン* コンテナ(container)技術を利用した仮想環境 です。これから紹介する Docker はコンテナ(container)を利用した仮想化技術です。これに対して、これまで紹介してきた、VMWare や VirtualBox、Parallels などは、ハイパーバイザー(Hypervisor)を利用した仮想化技術です。何が違うかというと、本格的に説明すると長くなるので簡単に言うと、ハイパーバイザー(hypervisor)は、利用している OS(ホスト OS:Host OS)の中で動く、別の OS(ゲスト OS:Guest OS)を動かす技術です。これに対して、コンテナ(container)は、利用している OS の機能を使って、別のシステムのように見せかける技術です。つまり、動いている OS の数が違います。簡単に言うと、ハイパーバイザー(Hypervisor)の場合は、利用
0
カバー画像

Django を自動的に起動するには?

Django を自動的に起動するには?前回はは、Gunicorn を利用して、Django のアプリを起動してホスティングするところまでを紹介しました。しかし、このやり方では、アプリを毎回手動で起動する必要があります。この記事では、自動的にサービスを起動する手順を紹介します。「サービス」を利用する今回は、Ubuntu のサーバーを利用しているので、こうした特定の機能を自動的に起動するには、「サービス(service)」という仕組みを利用します。「systemd」と呼ばれるサービスの設定します。設定は大きく分けて3つのファイルで行います。* サービス(service)* ソケット(socket)* ターゲット(target) Gunicorn の設定では、このうちサービスとソケットの設定を行います。 2 つのファイルを作成して、「/etc/systemd/system」に保存します。「guicorn.service」[Unit]Description=Daemon for GunicornRequires=gunicorn.socketAfter=network.target[Service]EnvironmentFile=/home/admin/utility/production.confType=notifyUser=adminGroup=www-dataRuntimeDirectory=gunicorn-adminWorkingDirectory=/home/admin/utilityExecStart=/home/admin/venv/bin/gunicorn util
0
カバー画像

Django で作成したアプリの公開

Django で作成したアプリの公開インターネット上で Django で作成したアプリを公開すると、開発環境とは大きく状況が変わってきます。 開発環境では、たくさんのアクセスが同時に発生する事は殆どないので、開発用のサーバーはシンプルに作られています。 しかし、インターネットに公開する場合にはこうした開発用の環境では十分ではありません。そこで、公開時には別の設定が必要になります。そこで、この連載では、仮想マシーンのサーバーに Django のアプリを実装する方法を紹介しています。Django のアプリに必要なものは?Django のアプリを Web ホスティングするのに必要なサーバーの機能は2つあります。* HTTP のリクエストを処理する機能* アプリケーションを起動する機能  Django のアプリケーションをインターネットに公開する際によく利用されるのが、* NGINX (Web サーバー)* GUNICORN  (アプリケーションサーバー)  前回の記事では、NGINX を仮想マシーンのサーバーにインストールして基本的なページが表示できるのを確認しました。 この記事では、GUNIXRON を起動して Django のアプリを表示できるようにします。開発環境との基本的な違い開発環境では、「manage.py」を起点にサーバーを起動しています。公開する場合は、Django の場合、WSGI という仕組みを使ってアプリケーションサーバーを起動します。 Django でプロジェクトを作成すると、この WSGI のアプリケーションのサーバーを起動するためのスクリプト「wsgi.p
0
カバー画像

Django のデプロイメント その1 サーバーの準備

Django のデプロイメント その1 サーバーの準備前回の記事では、Pythonanywhere のサービスを利用して、Django のフレームワークを利用して開発した Web アプリを公開する手順を紹介しました。殆ど、開発用のサーバーで行っているのと大きな違いはありませんでした。 本格的に Django で開発した Web アプリをインターネットで公開する場合、もう少し詳細な知識と作業が必要になります。この記事では何回かに分けて Django で開発した Web アプリを公開するための準備について紹介します。サーバーの準備今回は、実際にインターネットに公開するのではなく、「仮想 Web サーバ」を作成してそこに Django で開発した Web アプリをおいてサービスを提供するまでを実践してみようというものです。従って、Web ホスティングサービスを利用する必要はありません。しかし、ホスティングをする「Web サーバー」は必要になります。そこで、仮想マシーンを Web サーバーにして実際にサービスを提供するようにすることにします。 仮想環境は、「Docker」などを使って実現することも可能ですが、Docker を利用した記事は別に予定していますので、今回は「ハイパーバイザー」を利用した仮想マシーンで実践する事にします。ハイパーバイザー(Hypervisor)を利用した仮想マシーンには、よく利用されているもので:* VMWare* VirtualBox* Parallels などがあります。Mac などでは、Parallels が便利ですが、今回は VMWare を利用した物
0
カバー画像

Django で作成したサイトの公開方法

Django で作成したサイトの公開方法一通り Djang のフレームワークを利用して、Web アプリ・Web サービスを開発する基本的な手順を紹介してきましたので、実際に Django で作成したサイトをインターネットで公開する方法を紹介してみようかと思います。Django で作成したサイトを公開する場合、いろいろな方法があります。自分でサーバーを準備して OS のインストールから、Web サーバー周りの設定をやるとなると、ちょっと複雑です。そこで、今回は簡単にインターネットに公開する方法として、Django をはじめとする、Python を利用した Web ホスティングのサービスを提供しているプロバイダーの一つの「Pythonanywhere」のサービスを利用して、Django のテンプレートのプロジェクトの公開を一通りやってみる事にしました。PythonanywarePythonanywareは名前からもお分かりかと思いますが、Python に特化したサービスを提供しているプロバイダです。サイトは英語のサイトになっています。制限などはありますが、まずは無料で Django の Web アプリを公開することができます。「Beginner(ビギナー)」プランは無料から利用できます。ドメインの変更はできないので、「[username].pythonanywhere.com」にこと英なのとの、アプリは一つだけで利用できる CPU やネットワークのアクセスなどに制限があります。まずは、サービスを作成して公開するという目的ならば十分です。有料プランも5ドルからあるので、利用の目的に応
0
カバー画像

Django のテストやデバッグに便利なツールバー

Django のテストやデバッグに便利なツールバーDjango のフレームワーク自体に必要な基本機能が含まれていますが、利用すると便利な外部のモジュールもいろいろあります。その中でも便利なモジュールの一つがデバッグ用のツールバーです。この記事では、デバッグ用のツールバーの導入のやり方を紹介します。デバッグ用のツールバーのインストールこのモジュールは「django-debug-toolbar」と呼ばれるパッケージです。 Django のフレームワークに組み込みできるデバッグ用の「アプリ」です。利用する場合は、「pip」でインストールします$ pip3 install django-debug-toolbar django-debug-toolbar の基本設定Django のアプリの扱いなので、プロジェクトフォルダの「settings.py」の中の「INSTALLED_APPS」に登録します。INSTALLED_APPS = [    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',    'rest_framework',    'app',    'debug_toolbar'] さらに、「settings.py」の「MIDDLEWARE」にも追加します。MIDDLEWARE
0
カバー画像

Django で Markdown のファイルを表示する!

Django で Markdown のファイルを表示する!前回の投稿では、復習も兼ねて、仮想環境を作って Django の基本設定をするまでを紹介しました。 今回は、入力フォームで Markdown で書かれたファイルを選択して、そのファイルの中身を表示する機能を Django で作るやり方を紹介します。ファイルのアップロード先の指定これも以前の投稿で紹介していますが、復習を兼ねて再度取り上げておきます。 以前の投稿でも触れていますが、ファイルのアップロードなどの機能は利用する Web サーバーによっても変わってきます。Django の場合、開発で利用するサーバーと実際にインターネットで公開する際の Web サーバーは違います。そこで前回同様にこの記事でもまずは、開発用の環境で機能を実現する方法を紹介します。Django の場合は、アップロードされたファイルを置く場所を指定する必要があります。その設定はプロジェクトフォルダの「settings.py」で行います。追加するのは* MEDIA_ROOT* MEDIA_URL になります。この2つでアップロードしたファイルなどを置くフォルダを指定します。静的ファイル(スタティックなファイル)の置き場所と似た設定なので、「settings.py」の最後の方に設定されている「STATIC_URL」の近くで設定すると管理しやすくなります。STATIC_URL = '/static/'MEDIA_ROOT = os.path.join(BASE_DIR, 'media')MEDIA_URL = '/media/' ここで指定したフォルダ「me
0
カバー画像

DjangoでMarkdownを扱うには?

DjangoでMarkdownを扱うには?これまで、Django の基本的な使い方を紹介してきました。 この記事では少し実用的な実装を紹介します。GitHub などで利用されている Markdown で書かれたファイルを Django で作られているページに表示させる簡単な方法です。まずは Django のプロジェクトの作成と初期設定最初に、Django の基本を復習しながら、Django のプロジェクトの作成と初期設定を行います。手順は以下の通りです* 仮想環境の作成* Django のインストール* Django プロジェクトの作成* Django アプリの作成* テンプレートの作成* ファイルのアップロードフォームの作成* Markdown を表示するビューの作成この流れで作成します。以前の投稿と重複するところもありますが、一応初めから説明します。少し量が多いので何回かに分けて紹介します。仮想環境の作成以前紹介した通り、Python のパッケージを普通にインストールするとシステム全体にインストールされてしまいます。全てのプロジェクトで同じモジュールを使う場合は良いのですが、プロジェクトによって利用するパッケージが変わるので、この方法はちょっと不便です。 そこで、仮想環境を利用してプロジェクト毎に環境設定を分ける方法が利用されています。この例でも、仮想環境を利用して Django のプロジェクトを作成する事にします。仮想環境は幾つかありますが、今回は「virtualenv」を利用します。 Windows をご利用の方は、以前に紹介した「venv」の方が利用しやすいかと思いま
0
カバー画像

Django の便利な外部モジュール  dj-database-url

Django の便利な外部モジュール  dj-database-urlDjango で利用できる便利なモジュールに「dj-database-url」があります。機能をちょっと見ただけだと余りメリットがないように見えますが、便利な外部モジュールです。特に、開発に「SQLite」を利用する場合は、インターネットに公開する際は別の SQL データベースに置き換えるケースが殆どです。こうした切り替えを上手く管理できるモジュールです。公開の際はデータベースを入れ替える場合が殆どです!前回も触れましたが、Django の開発時とインターネットに公開時では設定が違うのが普通です。 特にデータベースは、Web アプリや Web サービスの性能に影響する部分なので、公開時には MySQL や PostgreSQL など本格的な SQL データベースを使うのが普通です。 SQLite はデータベースと行っても一つのファイルにデータを保村する簡易的なデータベースなので、沢山の人が同時にアクセスするような使用は想定されていません。しかし、開発時は開発者以外のアクセスは基本的にないので、こうしたシンプルなデータベースで開発しても大きな問題ではありません。SQLite の場合、SQLiteBrowser など、データベースの中身をチェックできる便利なツールもあるので、開発時には便利です。先日紹介した、「django-configurations」で環境変数を使えばこの問題にも対処できますが、データベースの指定には、「dj-database-url」も便利です。dj-database-url を利用するには
0
カバー画像

Django の便利な外部モジュール  django-configurations

Django の便利な外部モジュール  django-configurationsDjango は、Web アプリや Web サービスを実装するのに必要な機能が標準で揃っています。 しかし、利用すると便利な外部のモジュールもたくさんあります。 この記事では、Django の設定で使われる「settings.py」を管理するのに便利な外部モジュール「django-configurations」を紹介します。開発用と公開用の設定は違う!これまで、Django の基本的な使い方を中心に紹介してきました。 ここまでは、基本的に開発の為の設定を中心に書いています。開発の場合、開発用の Web サーバーを起動して機能の実装を進めていますが、実はこの設定はインターネットに公開する場合はいろいろ変更が必要になってきます。理由は幾つかありますが、大きなものとしては:* セキュリティ* 性能です。セキュリティに関しては、 開発用では、秘密鍵(secret key)が「settings.py」に書かれています。実際に公開する場合はこの秘密鍵は使用しないので、変更が必要です。また、性能面では、開発用に起動している Web サーバーの機能は制限があります。開発の場合はアクセスは限定的で、基本的には開発者以外はアクセスしません。従って、Web サーバー自体はシンプルな物になっていますし、標準で利用しているデータベースも SQLite という簡易型のデータベースです。実際に公開する場合には、別の設定で公開するのが普通になっています。詳しい、公開の手続きについては別途記事を書く予定ですが、今日はこうした設定の
0
カバー画像

Django で REST API を実装するには?

Django で REST API を実装するには?Django は基本的にバックエンドのフレームワークで、サーバー側でレンダリングを行う事ができます。しかし、場合によってはフロントエンド側で処理を行った方が良い場合も結構あります。その際、必要になるのが REST API です。この記事では Django で REST API を実装する方法を紹介します。REST API のフレームワークを利用します!Django で REST API をサポートする場合、REST API のフレームワークを利用するのが簡単で便利です。DJango は Web サービス・Web アプロを実装する基本的な機能は予め用意されていますが、REST API のフレームワークは別途インストールする必要があります。インストールは、pip を利用して行います。 仮想環境が有効になっていることを確認してインストールします。仮想環境になっていないと、システム全体に適用されてしまいます。$ pip3 install dijangorestframework これに続いて、プロジェクトフォルダの「settings.py」にこのフレームワークを登録します。 登録は、「INSTALLED_APPS」に「rest_framework」追加します。# Application definitionINSTALLED_APPS = [    # 'srd7.apps.Srd7AdminConfig',    'django.contrib.admin',    'django.contrib.auth',    'django
0
カバー画像

Django とテーブル一覧の表示

Django とテーブル一覧の表示Django で SQL のデータベースのテーブルは「models.py」に Python のクラスを作ることで簡単に定義できました。実際のアプリケーションでは、テーブルにデータを保存して、そのデータの処理が必要です。この記事では、簡単なデータベースのテーブルのアクセスについてまとめてみました。テーブルのエントリーの名前は?Django では、アプリのフォルダーの「models.py」に Python のクラスを作成して、そのクラスを「admin.py」に登録(register)すると、管理用アプリからアクセスできるようになります。例えば、「Customer」というクラスを作成します。class Customer(models.Model):    name = models.CharField(max_length=50, help_text="The name of a customer.")  これを、「admin.py」に登録するとfrom django.contrib import adminfrom srd7.models import Customer# Register your models here.admin.site.register(Customer)「127.0.0.1:8000/admin」にアクセスして、作成したスーパーユーザー(管理用のユーザー)でログインすると、このテーブルのデータの一覧の表示やデータの追加、修正、削除ができるようになります。実際に顧客(カスタマ)を追加してみます。「add」をクリックして顧客
0
カバー画像

Django で利用する SQL データベースの管理

Django で利用する SQL データベースの管理以前の投稿で、Django は標準でアプリの管理機能をサポートしているという事を紹介しました。この記事では、もう少し詳しく管理機能について紹介しています。データベースの管理や参照バックエンドを含めた Web サービスや Web アプリを開発する場合、データベースを利用するケースは多いと思います。Firebase を利用する場合は、Firebase コンソールを使うとデータベースの状態を簡単に参照できるので便利です。Django の場合は、SQL データベースを利用します。PHP で SQL のデータベースを管理する場合は、「phpmyadmin」が有名です。特に WordPress を利用する場合、データベースを直接管理する場合には便利なアプリです。phpmyadimin 自体は SQL データベースの管理なので、Django を利用する場合でも利用は可能ですが、別に Web サーバーを動かす必要もありますし、既に設定をされていない場合にはちょっと不便です。Django が標準でサポートしているデータベースは「SQLite」になります。このデータベースを利用する場合は、既に紹介している「SQLiteBrowser」を使えば必要な機能は揃っています。あとは、SQL データベースが提供するコマンドラインベースのアクセスを利用すれば、大抵のデータベースは直接アクセスが可能です。しかし、コマンドラインなので、慣れないと使いづらいのと、毎回コマンドをタイプしないといけないので面倒です。Django の管理アプリDjango は、フレーム
0
カバー画像

Djangoフレームワークでのファイルのアップロード

DjangoフレームワークでのファイルのアップロードDjangoフレームワークを利用してファイルのアップロードをする方法について紹介しています。例えばブログなどのWebサービスを実装する際に、ブログの投稿をファイルの形でサーバーに保存して表示する際などに利用できます。ブログのWebサービスこの記事ではブログのWebサービスを想定した実装を考えます。実際にはもう少しシンプルにするので、「ブログのような」サービスです。 一つの方法は、原稿の中身がHTMLやMarkdownなどのようにテキスト形式のデータの場合には、ファイルの中身をデータベースにそのまま格納する方法も可能です。もう一つの方法は、投稿の原稿をファイルの形でサーバー側に保存して、表示する際にファイルの中身を読み込んで表示する方法です。今回は、ファイルの形でサーバー側に保存する方法を紹介します。この形式の場合、ファイルはWebホスティングしているサーバーのフォルダに保存される形になります。この例では、シンプルにHTMLで書かれた投稿の原稿を表示するサービスを実装します。* アップロードするファイルを選択* 選択したファイルを表示アップロードするファイルの選択アップロードするファイルを選択するための仕組みを作ります。 アップロードするファイルはWebブラウザを使っているPCにある事を前提にしています。 PCからアップロードするファイルを選んで、サーバー上にアップデートするようにします。ファイルの選択は、Webページにフォームを作ってファイルを選択するUIを作ります。その上で、ファイルをアップロードするボタンをクリックしたらフ
0
カバー画像

Django で静的なファイルを扱うには?

Django で静的なファイルを扱うには?Web サービスや Web アプリを作る場合でも、静的な HTML ファイルやイメージ、CSS などを扱う機会も結構あります。 Django のバックエンドを含めたホスティングではそうした静的ファイルをどう扱ったら良いかをまとめてみました。Django のプロジェクト作成実際にプロジェクトを作成して、簡単な実装を体験するのが一番早くやり方がわかるので、今回はゼロから Django のプロジェクトを作成して、HTML ファイルから「Hello World!」を表示するようなシンプルな例で解説します。仮想環境の作成と Django のインストールLinux / Mac の場合は、virtualenv を利用するのをお勧めします。$ pip3 install virtualenvで仮想環境を利用するためのモジュールをインストールします。 次に、Django のプロジェクトのフォルダを作成して、そのフォルダに移動します。 今回は、「sample」というフォルダの下に仮想環境のフォルダと Django のプロジェクトフォルダを作るようにしています。$ mkdir sample$ cd sample$ python3 -m virtualenv sample$ source sample/bin/activateで「sample」という仮想環境を作成してそれを有効にしています。Windows10 の場合は、PowerShell が一般的な Unix 系の OS のシェルとは違うので、Python に組み込まれている「venv」を使います。 Powe
0
カバー画像

PyCharm で Django の開発を行うには?

PyCharm で Django の開発を行うには?Django の開発は、Python がベースになります。前回紹介したように、Python の開発を行う場合、PyCharm は便利な開発環境です。この記事では PyCharm の設定のやり方を Windows10 の場合を例にして紹介します。PyCharm とは?プログラミング言語 Python の IDE(Integrated Development Environment)です。JetBrains という会社が開発提供しています。Windows や MacOS をはじめとして、Linux でも活用可能な開発ツールです。無料でできるコミュニティ版と、有料のプロフェッショナル版がリリースされています。今回は、無料で利用可能のコミュニティ版を中心に紹介します。ダウンロードは、インターネットのJetBrains のサイトから行います。サイトに行くと利用している OS を検出して、必要なページに自動で振り分けています。今回は、無料で利用できるコミュニティ版をダウンロードして利用します。PyCharm のインストールダウンロードしたら、ダウンロードしたファイル、この例では「pycharm-community-2021.1.exe」をクリックしてインストールを実行します。 インストール先の設定です。その他の設定に関するものです。必要に応じて有効にしてください。基本機能は、標準の設定(どれもチェックしない状態)で使用できます。インストール先のフォルダの設定も標準設定で OK OK です。あとは、インストールを実行して終了するまで待つだけ
0
カバー画像

Python の開発環境をどうする?

Python の開発環境をどうする?プログラミングの開発をする場合、開発環境は結構重要です。効率的に開発を勧められるかどうかで、開発期間も変わってくるからです。 通常の Web 開発では、Microsoft の VSCODE を活用していますが、今回紹介している Django を使った Web 開発では、Python を中心に利用することになります。Python の開発では少し違った環境を利用しています。 この記事では、現在私が利用している Python の開発環境について紹介します。VSCODE は選択肢の一つVSCODE はプラグインが豊富で、Python の開発をする場合でも便利な選択肢の一つです。Microsoft が提供する Python の拡張機能だけでも十分に Python の開発をする事が可能です。 実際に、Python だけではなく、Django の拡張機能も豊富です。普段の Web 開発では VSCODE を利用していることもあって、VSCODE も必要に応じて使い分けています。しかし、Django で開発するに当たって、いろいろ調べてみたところ、PyCharm の IDE も結構便利なので最近使い始めました。まだ、完全に使いこなしているわけではありませんが、結構便利に利用しているので今回簡単な紹介を書いてみることにしました。Python に特化した開発環境が魅力!一つの大きな理由は、PyCharm の場合、Python での開発に特化して作られているので、そのままで Python の開発に必要な機能は揃っているというのが一番の魅力です。 VSCODE の場
0
カバー画像

Django の管理用アプリ

Django の管理用アプリWeb サービスや Web アプリを実装する場合、実装する Web サービスや Web アプリを設定したりする、管理用のアプリが必要になる場合がほとんどです。Django の場合は、この管理用のアプリの仕組みが標準で準備されているのも魅力の一つです。Django の管理用のアプリDjango のプロジェクトとアプリを作成すると、管理用のアプリのテンプレートも作成されます。 さらに作成したモデル(SQL データベースのテーブルの定義のクラス)を登録すると、テーブルの情報の一覧などを表示できるようになっています。管理者のアカウントが必要実際にアプリの管理を行うには管理者のアカウントが必要になります。 管理者のアカウント(ユーザー)は「スーパーユーザ」と呼ばれていて、コマンドラインから管理用のスクリプト「manage.py」を使って作成できます。$ python3 manage.py createsuperuserUsername (leab blank to use 'os_user_name'): adminEmail address: sample_email@yourdomain.comPassword:Password (again):Superuser created successfully.  これで管理用のユーザが作成されました。 ユーザ名は特に指定しない場合は、OS で使用しているユーザー名になります。パスワードは、最低8文字以上で短いと警告メッセージがでます。開発事は、シンプルなパスワードでも問題ではありませんが、インターネットに公開
0
カバー画像

何故、Python のフレームワーク Django を使うのか?

何故、Python のフレームワーク Django を使うのか?4 月に入って、Python のフレームワークである Django の記事を中心にお届けしています。 この記事では、どうして Python のフレームワーク Django なのかを簡単にまとめてみました。AI と相性の良い Python最近は、顔認識や自動運転などの技術が発達して実用化されてきています。 こうした技術は、いわゆる「AI」の技術を応用した物です。 ところで、最近よく AI と言われる技術は、もう少し専門的な言葉で言えば「機械学習」(machine learning)と呼ばれるものが中心になっています。さらに言うと、ディープラーニング(deep learning)と呼ばれる技術が使われています。Python に注目した理由は、こうした機械学習のライブラリが充実している点です。機械学習でよく利用されるライブラリは?では、機械学習でよく利用される Python のライブラリにはどんなものがあるかが気になると思います。 よく利用されているライブラリは、* Numpy* Pnadas* MatPlotLib* Scikit-Learnなどです。Numpyこれは、大きな多次元の配列や行列の処理に利用できます。データを処理する部分は、C 言語で書かれたモジュールを呼び出しているので、Python のコードで実行するより高速で処理することができるので有利です。大きなデータを扱う場合にこうした、配列や行列の演算はよく使われるので便利なライブラリの一つです。Pandasこれは、データ解析を行うためのライブラリです。データ
0
カバー画像

Django のテーブルの定義は models.py で!

Django のテーブルの定義は models.py で!Django のフレームワークを使って SQL のデータベースをやり取りする場合、直接 SQL を書かなくてもやり取りできるのが便利な点の一つです。「モデル(models)」という形でデータベースのテーブルを管理しています。 今日は、Django のモデルについての簡単な紹介です。Django のモデルとは?Django のモデルを一言で言うならば、どんなテーブルを使うか(作るか)を決めている仕組みです。Django のプロジェクトの下に「アプリ」を作ると、基本的なファイルが一緒に作成されます。 以前の投稿で Django のインストールと設定を紹介した記事では、「Hello World!」を返すアプリを例に挙げて紹介しました。今回はそのプロジェクトでデータベースを使う準備をしてみます。作成したアプリのフォルダ、helloworld アプリの場合、「helloworld」と言うフォルダの下にファイルが作成されていますが、その中の一つ「models.py」がこのモデルを設定するための、Python のソースコードになります。標準設定では、models.py の中身はほぼ空のファイルです。from django.db import models# Create your models here こんな感じのファイルになっています。このファイルにユーザーを登録するテーブルのモデルを作成する例を紹介します。アプリの登録作業を始める前に、Djang のプロジェクトに作成したアプリを登録します。プロジェクトのフォルダにある「sett
0
カバー画像

Django で利用するデータベース

Django で利用するデータベースDjango のフレームワークを利用して Web 開発をする場合は、SQL のデータベースを使うことになります。 SQL のデータベースは Firebase のデータベースとはちょっと違います。正確な言い方をすれば、Firebase のデータベースは広く活用されている、SQL などのリレーショナルデータベース(RDB)とは違うと言うことです。これまで、Firebase を中心にお届けしてきたので、その違いについてまとめて見ました。  Django は SQL データベースが基本Django で利用するデータベースは SQL データベースが基本です。標準では、SQLite を利用する設定になっています。SQLite を利用する場合は、特別な設定は必要ありません。そのまま、データベースの機能が利用可能です。その他にもメジャーな SQL のデータベースを利用可能です。Django の公式ページのドキュメントを見ると、公式にサポートされているデータベースは:* PostgreSQL* MariaDB* MySQL* Oracle* SQLite です。この他に身もサードパーティがサポートしているデータベースに* CockroachDB* FIrebird* Microsoft SQL Server  などがあります。利用するデータベースは、プロジェクトフォルダにある、settings.py で指定すれば利用可能です。標準設定では以下のようになっていますが、これを書き換えます。DATABASES = {    'default': {        '
0
カバー画像

Django のインストールのやり方

Django のインストールのやり方Python ベースのバックエンドのフレームワークである、Django のインストールについて簡単に紹介します。インストールは簡単で Python がインストールされていれば簡単に利用できます。Python のインストールDjango は Python ベースのフレームワークなので、Python が必要になります。 従って、Django をインストールする前に Pythong をインストールします。Python のインストールは利用している PC・OS によって違います。この記事では Windows を中心に解説します。Windows10 の場合、まず、Python の公式サイトからダウンロードします。2021 年 4 月 5 日現在の最新版は 3.9.4 です。インストーラーをダウンロードしたら、クリックして指示に従います。途中で、Python 3.x をパスに追加するかどうかチェックする画面が出てきますが、その際にパスに追加するを選択してください。仮想環境を利用するDjango を利用する場合、必要な Python パッケージを「pip」を用いて追加して利用しますが、pip を実行するとシステムに追加されます。複数の異なる Django のサイトやアプリを開発する場合、システムに追加するよりはプロジェクト毎にパッケージを管理できた方が便利です。そこで、仮想環境の利用が推奨されています。幾つかか Python の仮想環境をサポートするパッケージがありますが、この記事では「venv」を紹介します。venv は Python に組み込まれている
0
カバー画像

Djangoを使ったWeb開発

Djangoを使ったWeb開発最近、Firebase 以外の選択肢に、Python のバックエンドとして Django を触り始めました。大きな理由の一つが、マシーンラーニング(機械学習)を利用したアプリを考えているからです。マシーンラーニングのライブラリは Python で書かれたものが主流で、これらを利用するには、Python のプログラムの方が都合が良いことが多いからです。Python のバックエンドPython ベースのバックエンドは Django の他にも、Flask や CherryPy、Pyramid などいろいろありますが、Django は外部のモジュールを取り込まなくてもほぼ必要な機能が揃っているので、まずは Django の活用を最優先で現在取り組んでいます。ライトウエイトの場合、Flask も良さそうです。Python 利用のメリットは?豊富なライブラリが一番の魅力です。特にデータ処理系のライブラリが豊富で便利です。今回、Python ベースのフレームワークを検討した理由が、* 機械学習のライブラリ:Scikit-Learn* データ処理ライブラリ:Numpy* データ解析ライブラリ:Pandas などです、このほか、Google の提供する Tensorflow などのディープラーニングのライブラリなども利用できるのは大きな魅力です。これらを取り込んだ Web ベースのアプリを考える場合、Python を利用する大きな理由になります。Django の学習コスト基本的に Django はバックエンドのフレームワークで、独特の操作が必要になります。従って、基
0
カバー画像

三大Web開発フレームワークを比較してみた

フリーランスエンジニアのベナオです。初めて僕のブログを読んでいただいている方のために自己紹介をすると、IT系バックエンドエンジニアから独立してフリーランスとしてIT系の情報発信や開発、オンラインスクールのメンターをやっていたり、エンジニア交流イベントを運営していたりする人です。中でもWebアプリケーションを1ヶ月で作成できるようになるオンラインPython学習というサービスの運営を通じて、Web開発に使われるフレームワーク(以下FW)について調べたり情報発信することが最近増えました。これからWeb開発を始めようという方には、どのプログラミング言語にそれぞれどのようなFWが用意されているかを最初に押さえて、自分のエンジニア像に合ったスキル選択をすることをオススメしております。なぜならIT系への就職・転職した際に、開発現場でPHPやPython、Rubyなどのプログラミング言語をそのままの形で使うことはほぼなく、それぞれの言語に用意されたWeb開発を効率的に進めるためのFWとセットで運用することがほとんどだからです。例えば一般的なところで言えば、PHPであればlaravel、PythonであればFlask・Django、Rubyであればrailsがそれぞれ用意されていますよね。しかしこれからエンジニアを目指そうという方にとってはどんな人であっても、さあどのFWから手をつけようかという問題には非常に悩まされることと思います。それは既存のエンジニアが思い思いにTwitterで持論を展開し、自分の使っているFWがいかに素晴らしいかを語り合うばかりで、この種類のWebアプリの開発にはこのF
0
カバー画像

【Python】Wagtailでブログ構築③【Django】

前書きさて、連載3回目になりました。今回からは具体的な構築のやり方を紹介していきます。少々長くなる&細切れでのUPになりそうですが、お付き合いいただければ幸いです<(_ _)>また、wagtailには公式ドキュメント(英語)がありますので詳しくはそちらを参照いただければと思います。前回の記事をお読みになりたい場合は、↓をご覧くださいね。Wagtailのインストール公式ドキュメントを読むと、まずWagtailのインストール前にpillowが必要と書いてあります。ですのでpillowがインストールされていなければ先にpip installしちゃいます。私はpipenvの仮想環境でやりたいと思います。pipenv install pillow続いてwagtailのインストール。pipenv install wagtail shellを起動します。pipenv shellwagtailでのプロジェクトの始め方はこうです。wagtail start mysitemysite のところには好きなプロジェクト名をつけてくださいね!続いてmysiteディレクトリに移動し、マイグレート&スーパーユーザーのアカウントを作成します。cd mysitepython manage.py migratepython manage.py createsuperuserユーザー名、メールアドレス、パスワード、パスワード(確認)の順で入力していきます。パスワード入力の際は、セキュリティのためタイプした文字が画面に表示されませんのでご注意くださいね。さてここまでできたら、もうローカルで
0
カバー画像

【Python】Wagtailでブログ構築②【Django】

Wagtailの画面WagtailがどんなCMSなのか、私自身が使いこなしていないためまだまだ伝えられないかと思いますが……ぼんやりとした雰囲気だけでも感じてもらえればと、今日はキャプチャをアップしてみます(*^-^*)まずはログイン画面パスワード忘れた?Forgotten it? とありますね。メールでのパスワードリセットも最初から搭載されているっぽいです。Djangoでは自分で実装しないといけないので便利ですね!↑ログインするとこんな感じ。日本語にも対応していました(怪しいとこもありますがw)Wagtailはツリー上にページが構成されていて、Homeの下にBlogの一覧ページを、その下にブログページをという感じで、簡単にページの追加ができるようです。ただツリー状になっているのが基本だからか、最初ちょっと操作がわかりづらい部分もありましたが、慣れたら簡単そう(´∀`*)ブログの投稿画面はこんな感じです。下書きや、公開した記事を下書きに戻したりもデフォルトで実装されていました。またタグやカテゴリーは、公式のチュートリアルに実装方法が書いてあり、ほぼ丸写しみたいな感じで作ることができました。無料のテンプレートを表層部分に当てはめてみました。なんか画像つぶれてるけどw また直します。。。ブログ部分にはリッチテキストが使えますので、記事の途中で画像を差し込んだりなどもできて、記事を書く自由度もありそうです。いかがでしょうか?なんとなくWagtailの雰囲気が伝われば嬉しいです(*‘ω‘ *)次回からは実装の仕方などをまったり書いていければな~と思います。お読みいただき、ありがとうござ
0
カバー画像

【Python】Wagtailでブログ構築①【Django】

WagtailとはWagtail、というものを聞いたことがあるでしょうか??おそらく聞いたことがない方がほとんどではないかと思います。Wagtailは、ひとことでいえばCMSです。CMSとはcontent management systemの略で、専門的な知識がなくてWebサイトやブログなどのコンテンツを管理できるシステムです。超有名なCMSといえば、ココナラでもたくさんの出品サービスがあるWord Pressですね(´∀`*)Word PressはPHPで作られているのに対して、Wagtailはpython、もっと言えばDjangoというフレームワークをベースとして作られています。特徴は?Wagtailを扱うには、ある程度の専門知識が必要です。PHPの知識がなくても、またHTMLやCSSの知識がなくてもWord Pressは使えます。ですがWagtailでWebサイトを作ろう! と思ったら、pythonやDjango、HTML、CSSの知識がなければ無理だと思います。といっても、もちろんだれか他の人が構築したWagtailを運用するだけならば操作は簡単ですけどね(・∀・)そう考えるともしWagtailがWord Pressみたいにメジャーになったとしたら、誰もが使えるCMSとして親しまれているのかもしれません。どんなところがメリットなの?DjangoはブログやWebサイトはもちろんですが、むしろWebアプリの構築でとてもメジャーなフレームワークです。YouTubeやインスタグラムもDjangoが使われているそうです(Djangoだけで作られてるわけではないでしょうが)。私もD
0
カバー画像

Django Rest Framework JWT を使ってアカウント管理しよう!

# はじめに最近、BackendのAPIを作るところはDjangoで作ってみることが多く、その中で認証するのですが、Django Rest Framework JWT というのが使いやすかったので、紹介します。Django Rest Framework JWT というのは、名前の通り Django Rest Framework でサポートされているので、簡単に組み込むことができるかと思います。# 環境Python - 3.8.6Django - 3.1.4# 最小限の始め方## Django アプリケーションを作成```$ pip install djangorestframework-jwt$ django-admin startproject mysite$ python manage.py startapp polls```## 設定ファイルを編集```python:settings.pyREST_FRAMEWORK = {'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated',),'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework_jwt.authentication.JSONWebTokenAuthentication',”'rest_framework.authentication.SessionAuthentication','rest_framework.authentication.BasicAuthenticat
0
カバー画像

Django の非同期 View の実装方法

# はじめにDjango 3.1 より非同期 View がサポートされるようになりました。非同期で描画することによって、Webアプリケーションのページ速度の向上が見込めます。Python標準に入っているasyncやthread,multiprocessingとは違う技術が使われているので、Webアプリケーション+Djangoの構成においては非同期 Viewを使った方が良いかもしれません。# 環境Python: 3.8.3Django: 3.1.3httpx: 0.16.1uvicorn: 0.11.8# 使い方## App の作成```$ django-admin.py startproject project .$ python manage.py startapp app```## ソースコードを修正```python:view.pyimport asyncioimport httpxfrom django.http import HttpResponseasync def http_call_async():    for num in range(1, 6):        await asyncio.sleep(0.5)        print(num)    async with httpx.AsyncClient() as client:        r = await client.get("htt://www.yahoo.co.jp/")        print(r)async def index(request):    loop = asyncio.
0
カバー画像

TwitterのAPIで作られたTogetterというサービス

あなたTogetterというサービスをご存知ですか??このサービスはほぼTwitterのAPIで成り立っているサービスです。しかしWeb制作をする上には常識破りなことも多いのです今回はtogetterについて解説します。ツイートをまとめるキュレーションサービス基本的にはツイッター上の面白いツイートなどをまとめるキュレーションサービスです。元々開発者が1人で開発していたサービスだそうで2009年から運営されています。過去には閉鎖の危機も過去には閉鎖の危機になったことがあります。Webサービスが閉鎖の危機に陥るときは大抵サービスがつまらなかったりなどが原因ですがTogetterはAPIを停止されました。その後復旧出来たそうなのですがもしもそのまま出来なかった今Togetterは無くなっていたかもしれません。TwitterのAPIを使ってキュレーションサイトを作るには??ここでコードを書く時間はないので必要なことだけをまとめます。ツイッターでは引用タグをあちらが用意しているのでAPIを使う際はurlから変換が可能です。実はAPIを使うのは今言ったこととあとは検索、タイムラインの取得ぐらいで他はデータベースを組み方とHTML側です。なのでキュレーションサービスをTwitterのAPIをやろうと思えば実は簡単に作れます。もちろん人が集まるかどうかは別の話ですが。
0
39 件中 1 - 39
有料ブログの投稿方法はこちら