Blog Project: new error. Cant't find the post

Simple project and I believe its a trivial error, but can't find it. Getting the following error: Reverse for 'blog.views.post_detail' with keyword arguments '{'single_post': }' not found. 1 pattern(s) tried: ['blog/(?P[0-9]+)/$'] Seems like it cant't find the post. Is it a problem with my urls or anything else?

views.py:

def post_detail(request, post_id):
    single_post = get_object_or_404(BlogPost, pk=post_id)
    single_post.views += 1
    single_post.save()
    form = BlogCommentForm(request.POST)
    if request.method == 'POST' and request.user.is_authenticated:
        if form.is_valid():
            comment = form.save(commit=False)
            comment.post = single_post
            comment.save()
            return redirect(post_detail, single_post=single_post)
        else:
            form = BlogCommentForm()
    context = {'single_post': single_post,
               'form': form}
    return render(request, 'post_detail.html', context)

def add_comment(request, post_id):
   single_post = get_object_or_404(Post, pk=post_id)
   form = BlogCommentForm(request.POST)
   if request.method == 'POST' and request.user.is_authenticated:
     if form.is_valid():
        comment = form.save(commit=False)
        comment.post = single_post
        comment.save()
        return redirect(post_detail, single_post=single_post)
    else:
        form = BlogCommentForm()
context = {'form': form}
return render(request, 'add_comment.html', context)

models.py

class BlogComment(models.Model):
   author = models.ForeignKey(User, null=True, on_delete=models.CASCADE)
   post = models.ForeignKey(BlogPost, related_name='comments')
   comment_text = models.TextField()
   date_commented = models.DateTimeField(default=timezone.now)

post_detail.html

{% block features %}
  <h1>{{ single_post.title }}</h1>
  <p>Posted by: {{ single_post.author }} on {{ single_post.date_posted }} 
  </p>
  <p>{{ single_post.text }}</p>
  <p>{{ single_post.views }}</p>
  {% if user.is_authenticated %}
      <a href="{% url 'add_comment' single_post.id %}">Leave a comment</a>
  {% else %}
    <p><a href="/accounts/register">Register</a> or <a 
       href="/accounts/login">Log-in</a> to comment </p>
  {% endif %}

{% for comment in single_post.comment.all %}
    {{ comment.comment_text }}
    {% empty %}
    <p>There are no comments yet. Be the first</p>
{% endfor %}
    <h3>Post a comment</h3>
    <form method='POST'>
        {% csrf_token %}
        {{ form | as_bootstrap }}
        <button type="submit">Submit</button>
    </form>
{% endblock %}

urls.py

from django.conf.urls import url
from .views import post_all, post_detail, new_post, add_comment

urlpatterns = [
url(r'^$', post_all, name='post_all'),
url(r'^(?P<post_id>[0-9]+)/$', post_detail, name='post_detail'),
url(r'^(?P<post_id>[0-9]+)/add_comment/$', add_comment, name='add_comment'),
url('new_post', new_post, name='new_post')
]

forms.py

class BlogCommentForm(forms.ModelForm):
class Meta:
    model = BlogComment
    fields = ('comment_text',)