I don't think it is a a good idea to call a view from another view, but if you have an underlying function that used to be a view, and you want to call it to do the secondmethod, then that's a good way to begin to do more with Django. Another good way is to practice using the generic class-based views until they begin to make sense.
One of my developers used to "assume" the request.method was 'POST' in one function, called search_result, and she also had a search_request method which was also a view:
def search_request(request):
.... assumes GET ...
def search_result(request):
.... assumes POST ...
I created a new function search_view(), and made that the view, the other two are just functions:
def search_view(request):
if request.method == 'GET':
return search_request(request)
elif request.method == 'POST':
return search_result(request)
else:
return HttpResponseNotAllowed();