I've been looking into GeoDjango recently, I'm struggling to customize the default zoom level of the openstreet map displaying in my admin section. Below is what I have tried but with no effect, please assist.
from django.contrib.gis import admin
class LocationAdmin(admin.OSMGeoAdmin):
    default_zoom = 5
admin_site.register(ReferenceSpaceLocation, LocationAdmin)
My model
class ReferenceSpaceLocation(models.Model):
    geometry = models.GeometryField()

The default value for point_zoom with OSMGeoAdmin is 14 which is what your's seems to be at the moment. Try overwriting point_zoom in LocationAdmin. As is explained below, this should work if you are using PointField or MultiPointField. 
The default zoom level will depend upon a few different things:
default_zoom will be used. This can be set as follows:class LocationAdmin(admin.OSMGeoAdmin):
    default_zoom = 5
PointField or MultiPointField then then it looks like the point_zoom value will be used instead of the default_zoom. This can be set as follows:class LocationAdmin(admin.OSMGeoAdmin):
    point_zoom = 10
If you look in the source code, you'll see the following in the js file that run's that admin view:
// django/contrib/gis/templates/gis/admin/openlayers.js
    var wkt = document.getElementById('{{ id }}').value;
    if (wkt){
        ...
        // Zooming to the bounds.
        {{ module }}.map.zoomToExtent(admin_geom.geometry.getBounds());
        if ({{ module }}.is_point){
            {{ module }}.map.zoomTo({{ point_zoom }});
        }
    } else {
        {% localize off %}
        {{ module }}.map.setCenter(new OpenLayers.LonLat({{ default_lon }}, {{ default_lat }}), {{ default_zoom }});
        {% endlocalize %}
    }
This means that:
default_zoom is used.PointField or MultiPointField then {{module}}.is_point is true, and as can be seen point_zoom is used. zoomToExtent(admin_geom.geometry.getBounds()). If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With