Define your view, in views.py, for example:

def my_view(request, id, action):
...

In urls.py:

url(r'^admin/myapp/my-view/(?P<id>[0-9]+)/(?P<action>[a-z]+)/$', myapp.views.my_view, name='my-view'),

Then, somewhere in templates/admin/change_form.html:

 {% if opts.object_name.lower == 'mymodel' %}
<a href="../../my-view/{{ original.id }}/print/"> Goto My View</a>
{% endif %}

Where original is the main object of the model. And opts.object_name gets you the object’s name (model’s name).
Do whatever you want with id and action in your view (id = original_id, action = print), then display the result in, my_view.html.