Check comments spam or not is not working

10 views
Skip to first unread message

Pari Nita

unread,
Feb 6, 2015, 7:25:55 PM2/6/15
to rubyonra...@googlegroups.com
I am new in ruby and trying to post comments by the user in services.

 They were successfully posted in a services view page and  stored in  database as well but i want to check whether  the comment by the user is spam or not.

I my service controller, i am posting the comment in **updating comment attributes method** then  saving those in **update method**

 What i am doing is listed below:-

 

    def update_comment_attributes
    params[:service][:comments_attributes].each{ |k, v| v.merge!(user_id:   session[:user_id]).merge!(author: User.where(:id => session[:user_id]).pluck(:name).first ).merge!(author_email: User.where(:id => session[:user_id]).pluck(:email).first )}  if params[:service] && params[:service][:comments_attributes]
    end

here is update :-


    def update
    respond_to do |format|
      if @service.update(service_params)
   
   
        @comment = Comment.find_by(service_id:@service.id, user_id: session[:user_id])
            if @comment.spam?
                @comment.is_spam = 'Y'
                @comment.aki_response = @comment.akismet_response
                @comment.update_attribute(is_spam: 'Y')
            else
                @comment.is_spam = 'N'
                @comment.aki_response = @comment.akismet_response
                @comment.save
                @comment.update_attribute(:is_spam, 'N')

            end
   
        format.html { redirect_to @service, notice: 'Service was successfully updated.' }
        format.json { head :no_content }
      else
        format.html { render action: 'edit' }
        format.json { render json: @service.errors, status: :unprocessable_entity }
      end
    end
     end

now as i am commenting my comments do save but it didn't check whether it is spam or not ..tried a lot got failed..

Thanks in advance
Reply all
Reply to author
Forward
0 new messages