preview機能追加

  • March 18, 2007 11:17

このブログにプレビュー機能を追加しました。 基本的に「例のあれ」の れいあさん そのままです。たくぅさんありがとうございます。settings.pyで設定したTEMPLATE_DIRの下に

  • admin/change_form.html
  • admin/submie_lint.html

を作ることにより、django本体のdjango/contrib/admin/templates/change_form.htmlとsubmit_line.htmlをつかわないようになっています。

prototype.jsが必要で、urls.pyとviews.pyに少し手をくわえる必要がありますが「れいあさん」のソースを見ればすぐに分かると思います。

追記

prototype.js不要のバージョンが公開されたのでこちらも変更しました。

ちなみにviews.pyは以下のようになっています。参考になります。

def get_blog_preview(request):
       perms = ['blog.add_entry', 'blog.change_entry']
       if not request.user.has_perms(perms):
               raise Http404

       if request.method == "POST":
               preview_data = request.POST.copy()
               entry = Entry(title=preview_data['title'], body=preview_data['body'], create_date=datetime.now())

       else:
               entry = None
       return render_to_response('blog/entry_detail.html',
                                 dict(object=entry),
                                                 context_instance=RequestContext(request))

Comments

March 18, 2007 19:42 by たくぅ

ごめんなさい。
最初手違いで開発途中版をアップしていて、最新の版ではprototype.js使ってません……。

March 18, 2007 23:29 by uemura

たくぅさん

さっそくprototype.jsをつかってないものに変更しました。
とても参考になります。