You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Djangoフレームワークには、利用者ごとに一度だけ表示するメッセージ(フラッシュメッセージ)を扱う機能(django.contrib.messages)が含まれています。 The messages framework | Django documentation | Django メッセージは、複数のリクエストをまたいで表示することを想定しているため、Cookieやセッションに保存する必要があります。 「メッセージはどこに保存されているの?」という疑問を持ったので、少し調べてみました。 ストレージバックエンド どのようにしてメッセージを保存するかは、ストレージバックエンドに指定するクラスによって決まります。 バックエンドクラスは、Djangoの設定ファイルで切り替えられます(settings.MESSAGE_STORAGE) Django 1.8では、django.contrib.mes
Wikiエンジンは時代に合わせて変化しています。コンセプトは変わらないまでも、最新のトレンドや技術を取り込んでパワーアップしています。また、プログラミング言語自体がバージョンアップしているケースも多いです。 今回はPython/Djangoで作られたWikiエンジンのWalikiを紹介します。コンテンツはGitを使って管理されています。 Walikiの使い方 WalikiのUIはBootstrapベースとなっています。ページごとに編集権限を管理できます。 新しいページを作成します。記法はreStructuredTextまたはMarkdownが選択できます。 編集画面はCodeMirrorを使っており、黒背景になります。 編集中。 編集後です。 コラボレーション機能もあります。 添付ファイルを追加することもできます。 その他の特徴としては、プラグイン機能があります。また、他のDjangoアプ
What’s the optimal layout for your Django applications, settings files, and various other associated directories? When Django 1.4 was released it included an updated project layout which went a long way to improving the default Django project’s layout, but here are some tips for making it even better. This is a question we get asked all of the time so I wanted to take a bit of time and write down
Multi-Model Database — FoundationDB 毎秒1400万回のライト(write)を行うNoSQLデータベースFoundationDB、ACIDの条件も満たす - TechCrunch FoundationDBのNoSQLデータベースがACIDトランザクションをサポート FoundationDB というのが TL に流れてきて、読んでたら面白そうだったので触ってみた。ただ触るだけだと面白くないので Django 経由で触ってみることに。 結論 Django 1.6 系でちゃんと python manage.py syncdb してデータが入る。これはすばらしい。 データの取り出しも問題ない。何か意識する必要もないので良い感じ。 性能はまだ 環境 Mac OS X 10.9.5 Python 2.7.9 Python 関連はこの辺入れた
Silk is a live profiling and inspection tool for the Django framework. It: Intercepts requests and responses, recording: SQL Queries Response times Headers Bodies Allows tracing of SQL queries via Python stack traces Profiles blocks of code and functions Generates code and commands for replaying requests A live demo is actively profiling this site. The github readme is currently acting as document
Django1.6以前のバージョンでは、管理サイトで表示されるアプリケーション名を変更する方法は通常の使い方では提供されていませんでした。 変えたいのはこの「Myapp」という部分。 Django1.7ではアプリケーションごとの設定が抽象化、再利用可能な仕組みが導入され、アプリケーション名を設定できるようになりました。 ソースコード django.apps.AppConfigクラスを継承して、アプリケーション設定のクラスを作成し、アプリケーション名を設定します。 作成したアプリケーション設定のクラスを、アプリケーションのデフォルトにします。 試したバージョンはPython3.4, Django1.7です。 myapp/models.py モデルはいつも通り。 from django.db import models class Item(models.Model): name = mode
I was able to find several Django-based URL shortening apps, but I didn’t want redirection – I wanted native Base62 URLs. Fortunately, it wasn’t hard to roll up a system from scratch. Started by finding a python function to do the basic encoding – this one did the trick. I saved that in a utils.py in my app’s directory. Of course we need a new field to store the hashed strings in – I created a 5-c
Djangoでクエリのログを出力したい場合、ロギングの設定でdjango.db.backendsのロガーを設定すればできます。 ただし、これはsettings.DEBUG=Trueのときにしか出力されないようになっています。 これはドキュメントにも書かれています。 ロギング — Django 1.4 documentation https://docs.djangoproject.com/en/1.6/topics/logging/ DEBUG=Falseの際でもSQLのログを記録したい場合があり、方法を調べてました。 試したのは、Python 2.7, Django 1.6.6 注意 Djangoがデバッグ時にしかクエリログを出力しないようにしているのは、パフォーマンスに問題がある等の理由で意図的なものです。 この記事の方法でログを出力すると、パフォーマンスに問題が出る可能性があることに
API 作成に django-rest-framework を使います。 JWT でトークンベースの認証のために django-rest-framework-jwt というプラグインを使います。 django-rest-framework を使う場合の認証情報の保持には選択肢があり、JWT はその1つです。 JWT はトークンベースの認証で、トークンを永続化する必要が無いのが楽です。 ブラウザでの webアプリなら session_id を Cookie で持つことで認証情報を保持できますが、 その他のクライアント(iOSアプリなど)で使う API では認証情報をトークンなどで保持する必要があります。 略称 JW: JSON Web JWT: Token JWS: Signature JWE: Encryption django-rest-framework-jwt の使い方 省略。REA
prefetch_relatedはDjango 1.4で追加された機能です。 親子関係を表すモデル(多対多になってるものなど)をツリー状に表示する場合、ループ内でクエリを実行しってしまうと、クエリ数が多くて極端に遅くなります(特に2段目とか3段目)。 prefetch_relatedを使うと、事前にリレーション先のデータを取得しておき、ループ内で新たにクエリが実行されないようにできます。 試したバージョンは、Python2.7、Django1.6.5です。 ソースコード 完全なコードはgithubに置いてます。 sample_nullpobug/django/market at main · tokibito/sample_nullpobug · GitHub shop/models.py # coding: utf-8 from django.db import models class
TwitterやFacebookは社外の人たちとコミュニケーションを取るのには便利ですが、社内の人たちのコミュニケーションにはあまり向きません。いちいち友だち申請なんてやるのも面倒でしょう。 そこで紹介したいのがBootcamp、エンタープライズ向けのソーシャルネットワークシステムです。社内コミュニケーションの一環にいかがでしょう。 Bootcampの使い方  Bootcampの主な機能はTwitterライクなツイート、ブログそしてQ&Aとなっています。システムとしてはDjango 1.6.5、Python 2.7、Bootstrapの組み合わせになっています。システムはシンプルなので、カスタマイズできる余地が大きそうです。 BootcampはPython/Django製のオープンソー
Djangoのセッションデータは、settings.SESSION_ENGINEで指定されたクラスによって保存されます。 Django 1.5.3より前のバージョンでは、セッションデータのオブジェクトをシリアライズ、デシリアライズする処理は、ここで指定されるバックエンドクラスに任されていました。 デフォルトでは、pickleモジュールでダンプして、ハッシュ値+base64エンコードした文字列になっていました。 Django 1.5.3以降では、このpickleモジュールでダンプしていた部分が分離され、新たにsettings.SESSION_SERIALIZERという設定項目が追加されました。 SESSION_SERIALIZER Django 1.5.3以降の1.5系では、settingsにSESSION_SERIALIZERを指定しない場合は従来通りpickleモジュールが使用されます。
DjangoのWebアプリを開発している際、リファクタ/テスト拡充のために集めた情報をまとめます。 #1 Djangoプロジェクト/アプリケーション/設定ファイル構成 #2 Djangoテスト戦術 #2 補足編 #3 Django Model/View/From/Template戦術 戦略よりも、自分が入社した時既にあった前提に対応する為に考えた戦術を中心に書いていきます。また、自分の思考をダンプして記録しておくという目的もあるので、記述が冗長な部分もありますがご容赦ください。 前提 既に本番リリースされてる Django 1.5で作られてる 中/小規模Webアプリケーション(テーブルサイズ10 - 20) 開発/運用1人(achiku), アドバイザー/レビューアー1人(moquada) バックエンド処理ロジックは比較的シンプル Celeryを使った非同期タスクとして動く処理がある JS
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く