アプリケーションを作ってみたい

日報入力プログラムがほしいなぁとか呟かれてしまったのでDjangoで試してみようかなー。
なんて考えてみたもののなんだかなかなかうまくいかない。
やりたいことは以下

  • データ入力画面にはログインが必要
    • 追加、更新、削除ができる
  • 参照画面は入力したユーザ名で絞り込んで表示
    • 参照は特にログインユーザで制限しない


データ入力画面はまだ試していないが、django.views.generic.create_update.create_objectを使うとなんだかうまいことやってくれそうな気がする。
参照画面からやってみることにする。
おおよそ単純なデータの表示なので汎用ビューでできそうな気がするので試してみる。
django.views.generic.simple.direct_to_templateで何とかならないかと試してみる。


問題発生

  • user_name = models.ForeignKey(User)で作成したユーザ名は実はUserのプライマリキーなのでそのままでは{%ifequal%}できないUserオブジェクトだった。obj.user_name.usernameで取れる。もしくはobj.user_name_idでidを取るか
  • 検索結果を汎用ビューに渡す方法があるのかどうかは不明
  • テンプレートの中でどうにかできるのかは不明


面倒なのでviews.pyを作ろうか。
しかし、便利機能があるのに使えないのはしゃくだ。