タグ

2012年9月10日のブックマーク (9件)

  • FileField、ImageFieldでファイルアップロード先フォルダをユーザー毎に変更する - Pyro Memo

    django1.0から、FileFieldとImageFieldのupload_to属性に関数を指定できるようになり、ファイルのアップロード先を動的に設定できるようになったようだ。 http://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.FileField 関数の第一引数にはモデルオブジェクトが入り、第二引数にはファイル名が入る。 下記のようなモデルを作成することで、ユーザー名のフォルダに分けてファイルをアップロードすることができた。 models.py import os from django.db import models from django.conf import settings from django.contrib.auth.models import User def get_p

  • ModelFormを使ってデータ編集機能実装 - nyaago69のブログ

    ほかにやっている人(id:perezvon:20080202:1201931223)がいましたが Djangoの1.0でModelForm(モデルより生成されるフォーム)を使って、データ編集機能を実装してみました。 Modelの定義 from django.db import models from django.contrib.auth.models import User ... class Todo(models.Model): title = models.CharField(max_length=200) description = models.TextField(blank=True, max_length=4000) datetime_created = models.DateTimeField(auto_now_add=True) datetime_updated = m

    ModelFormを使ってデータ編集機能実装 - nyaago69のブログ
  • はじめての Django アプリ作成、その 2 — Django v1.0 documentation

    設計哲学 コンテンツの追加や変更、削除を行うためのスタッフや顧客向けの管理サイト 構築は、創造性の欠けた退屈なものです。そこで、 Django ではモデルを管 理するための admin インタフェースを完全に自動化しています。 Django はニュースルーム環境で開発されました。ニュースルーム環境では、 「コンテンツの作成者 (content publisher)用」と「公開用 (public) 」サイ トをきわめて明確に区別しています。サイト管理者は新たな話題やイベント、 スポーツのスコアなどの入力に使い、コンテンツは公開用サイト上で表示され ます。 Django は、サイト管理者向けの一元化されたコンテンツ編集インタフェー スの提供という問題を解決しているのです。 admin は一般のサイトを訪問者に使ってもらうためのものではなく、サイト管 理者のためのものなのです。 admin サイ

    bluele
    bluele 2012/09/10
    admin
  • Django admin サイト — Django v1.0 documentation

    Django の最も強力な機能の一つに、自動生成される admin インタフェースがあり ます。 admin はモデルのメタデータを読み込んで、強力で実運用に耐えるインタ フェースを生成し、コンテンツの製作者がすぐにサイトにコンテンツを投入できる ようにします。このドキュメントでは、 Django の admin インタフェースを有効に したり、カスタマイズしたりする方法を解説します。 注意 admin サイトは Django 0.96 から大幅にリファクタされました。このドキュメ ントでは、よりカスタマイズ機能の充実した新しい admin サイトについて解説 しています。この admin サイトの仕様は、 Django の開発をよく追いかけてい る人なら、一度は “newforms-admin” という名前で耳にしたことがあるはずで す。 概要¶ Django admin サイトは、以下

    bluele
    bluele 2012/09/10
    admin解説
  • django: ログイン画面をメッセージでカスタマイズするためのデコレータ - karasuyamatenguの日記

    ウェブサイトにユーザを引き込むには、できるだけauth無しで機能を体験させてあげ、当に必要なところに来たら登録またはロクインを求めるようにしたい。無名のサイトで何もできる前にログイン強制したらユーザは帰てしまうから。 djangoではログインが必要なviewに@login_requiredデコレータを被せて必要に応じてログイン画面に飛ばすのが一般的だ。この際、ログイン画面にviewごとのメッセージを入れると親切だ。「投稿するにはログインが必要です」とか「お気に入りを付けるにはログインしてください」などのメッセージをログイン画面の上に出すとユーザの理解を得やすくなると思う。 ログイン画面のテンプレートはmsgとうい変数がある場合はそれを表示するようにする。あとはviewとメッセージを結び付けるだけ。このようにできたら簡潔でいい: @add_message_to_login('「投稿するには

    django: ログイン画面をメッセージでカスタマイズするためのデコレータ - karasuyamatenguの日記
  • フォームフィールド — Django v1.0 documentation

    class Field(**kwargs)¶ フォームクラスの作成で一番重要なのは、フォームの各フィールドの定義です。各 フィールドには固有のデータ検証ロジックと、いくつかのフックが備わっています。 Field.clean(value)¶ フィールドクラスの主な用途はフォームクラスにおけるフィールド定義ですが、フィー ルドクラスは直接インスタンス化して使えるので、フィールドの動作を理解する役 に立つはずです。各フィールドインスタンスは clean() メソッドを備えており、 単一の引数を取って検証を行い、その結果に応じて django.newforms.ValidationError を送出するか、クリーニング済みの値を返 します: >>> f = forms.EmailField() >>> f.clean('foo@example.com') u'foo@example.com' >>

    bluele
    bluele 2012/09/10
    form
  • ModelFormでForeignKeyのModelChoiceFieldをカスタマイズ - ドキッ!はてなブログに移転しました!

    models.py class Type(models.Model): name = models.CharField(max_length=255) class Blog(models.Model): title = models.CharField(max_length=255) contents = models.CharField(max_length=255) type = models.ForeignKey(Type) という場合にBlogのFormクラスを作ろうとして from django.forms import ModelForm class BlogForm(ModelForm): class Meta: model = Blog とした場合テンプレートに出力されるHTMLが <select name="type" id="id_type"> <option valu

    ModelFormでForeignKeyのModelChoiceFieldをカスタマイズ - ドキッ!はてなブログに移転しました!
  • モデルからフォームを生成する — Django v1.0 documentation

    ModelForm¶ データベース駆動のアプリケーションを構築しているのなら、 Django のモデルに 対応したフォームが必要な場合があるでしょう。例えば、 BlogComment モデル を作っていて、読者がコメントを入力できるようなフォームを作成したいような場 合です。こうしたケースでは、すでにモデルにフィールドを定義しているので、新 たにフォームクラス用にフィールドを定義するのは無駄な作業でしかありません。 この理由から、 Django はモデルからフォームクラスを生成するためのヘルパクラ スを提供しています。 以下に例を示します: >>> from django.forms import ModelForm # フォームクラスを生成 >>> class ArticleForm(ModelForm): ... class Meta: ... model = Article # 記事

  • Meet Us Kyoto

    bluele
    bluele 2012/09/10