0


1

公式のドキュメントチュートリアルを使ってdjangoを学び始め、この登録フォームを作成しました。 私はアプリ全体の設定をしていますが、データを処理する方法にはまっています。 ドキュメントを理解するのは少し難しいです。 私はいくつかの助けを得ることができれば、それは素晴らしいだろう。

これがモデルの設定方法です。

クラスuser(models.Model):ユーザー名= models.CharField(最大長= 20)名前= models.CharField(最大長= 25)collegename = models.CharField(最大長= 50)イベント= models.CharField(最大長= 30)col_roll = models.CharField(最大長= 15)

def __unicode __(self):self.usernameを返す

これはindex.htmlの形式です。


この新規ユーザーの登録を処理するためのビューの作成方法には従いません。 誰かが私を助けることができれば、それは素晴らしいでしょう。 データベース(MySQL)は名前(register_user)で作成されます。 上記のフォームの値をデータベースに格納する方法がわかりません。 それが普通のpythonであるならば、それは容易に行われたであろう、しかしDJANGO私は理解していない。

どうもありがとう。

2 Answer


1


あなたは フォームの文書化を読んでいないようです。 モデルからフォームを作成する方法、テンプレートに出力する方法(HTML入力要素を手動で記述する必要はない)、およびビューで処理する方法について詳しく説明します。


0


私が始めたときにフォーム処理ビットを理解するのに私は少し時間がかかりました。 フォームパートに進む前に最初に必要なことは、http://docs.djangoproject.com/en/dev/intro/tutorial03/#intro-tutorial03 [ビュー関数]を作成することです。 ビューはindex.htmlファイルをテンプレートとして使用します。 そのビューで(上のDanielのリンクから、あるいはhttp://docs.djangoproject.com/en/dev/topics/forms / modelforms / [モデルからのフォームの作成]のいずれかで)フォームを作成したいでしょう。 フォームクラスを作成したら、そのインスタンスのインスタンス化されたコピーをビューに提供し(form = MyRegistrationModelForm()など)、index.htmlのすべての入力タグを\ {\ {form}}に置き換えます。 これは事前にフォーマットされたフォームを出力しますが、それはあなたが望むものではないかもしれませんが、それからソースを見てフォームフィールドに名前をつける必要があるものを見ることができます

もう一つ。 あなたがそうであるかどうかわからないが、あなたはこれのために django-registrationを使うべきです。 独自のユーザークラスを作成するのではなく、django.contrib.auth.modelsの組み込みUserクラスを使用してから、必要なカスタムフィールドにdjango-registrationを使用します。 定義されたUserクラスを使用すれば、他のモジュールをもっと簡単に接続することができます。

データベースに関しては、適切なMySQL接続情報をsettings.pyに入れたと仮定すると、プロジェクトのルートで 'python manage.py syncdb’を実行すると、必要なテーブルがすべて作成されます。 新しいモデルを追加するときは必ず再実行してください。