Muchas gracias. pero tengo dos dudas con respecto a lo que me dijiste. 
Intente hacer el ultimo ejemplo.  
 Cita:  Código:
registro = form.save()
registro.usuario = usuario
registro.save()
    y me dice que la columna usuario_id no puede estar vacia como si no tomara la asignacion "registro.usuario = usuario"  y lo otro es en el caso de usar   
Código Python:
Ver originalself.fields['usuario'].queryset = Usuario.objects.filter(id=parametro.id)
  
como le paso ese parametro.id al metodo __init__??? y perdona pero es q aun no comprendo mucho el funcionamiento del metodo.