Tizimga kirgandan keyin sharh va postlarni saqlang

Menda maqola/sharhlar boshqaruvchisi bor. Agar foydalanuvchi sharh yuborsa va tizimga kirmagan bo'lsa, men uni sessiyada saqlashni xohlayman. Muvaffaqiyatli kirishdan so'ng, saqlangan sharhni yaratmoqchiman.

Buni qilishning eng yaxshi usuli qanday?

btw: Menda ichki yo'nalishlar bor. maqolalar => sharhlar

hozirgacha men oldim:

    class CommentsController < ApplicationController
      def create
       if current_user
         create...
       else
        session[:comment] = params
        redirect_to login_path
       end
    end

person Databaas    schedule 16.09.2011    source manba


Javoblar (1)


Dastlabki eslatma:

Paramlar xeshini saqlash o'rniga e'lon qilingan holatda bo'lmagan sharh yaratish va identifikatorni sessiyada saqlash ancha yaxshi amaliyot (va mantiqiyroq).

Agar foydalanuvchini autentifikatsiya qilish uchun borganingizda va autentifikatsiya haqiqiy bo'lsa, siz ushbu sharhni shu kabi narsadan foydalanib nashr qilish uchun almashtirishingiz mumkin.

comment = Comment.find(session[:comment])
comment.update_attribute(:published, true)

Shu bilan bir qatorda, siz foydalanuvchini nashr etilmagan sharhlari navbatiga yo'naltirishingiz mumkin (siz ularni asboblar paneli sahifasiga yoki shunga o'xshash biror narsaga yo'naltirishingiz mumkin).

person basicxman    schedule 17.09.2011