0

この次のコードを乾燥させたいと思います。ifステートメントとelseステートメントを1行にまとめることができることは知っていますが、より良いアプローチはありますか?ありがとうございました、

def group_access
 @group = Group.find_by_url(params[:id])

 if user_signed_in?
    if @group.is_private == true and current_user.id == @group.user_id
      return
    end

    if @group.is_private == true and current_user.id != @group.user_id
      render "show_noaccess"
    end
  end

  if !user_signed_in?
    if @group.is_private == false
      return
    end

    if @group.is_private == true 
      render "show_noaccess"
    end
  end
end
4

1 に答える 1

1
def group_access @group = Group.find_by_url(params[:id])
  if @group.is_private? and current_user.try(:id) != @group.user_id
    render "show_noaccess"
  end
end
于 2012-10-29T01:54:32.653 に答える