Colección de citas famosas - Colección de poesías - Aprende cómo Django escribe views.py en el libro.

Aprende cómo Django escribe views.py en el libro.

¿De donde? django.core.urlresolvers? ¿importar? Reverse_lazy

¿De dónde viene? Django. ¿atajo? ¿importar? ¿Redirigir? get_object_or_404

¿Desde dónde? django.forms.modelos? ¿importar? Modelo form_factory

¿Dónde? django.aplicaciones? ¿importar? Aplicación

¿Desde dónde? django.views.generic.base? ¿importar? PlantillaRespuestaMixin,? Perspectiva

¿Desde dónde? django.views.generic.list? ¿importar? Vista de lista

¿Desde dónde? django.views.generic.edit? ¿importar? Crear vista, actualizar vista, eliminar vista

¿Dónde? Tirantes. ¿vista? ¿importar? Iniciar sesiónRequiredMixin,? Requisitos mínimos de permiso

¿Desde dónde? Tirantes. ¿vista? ¿importar? CsrfExemptMixin,? jsonrequestsresponsemixin

¿Desde dónde? . ¿modelo? ¿importar? ¿ciertamente? módulo,? Contenido

¿De dónde viene? . ¿hoja? ¿importar? Colección de módulos

¿De dónde viene? django.db.modelos? ¿importar? Contar

¿Desde dónde? . ¿modelo? ¿importar? Sujetos

¿De dónde? django.views.generic.detalle? ¿importar? Vista detallada

¿Desde dónde? alumno. ¿hoja? ¿importar? Formulario de inscripción al curso

#?Crear? ¿su? ¿Punto de vista? para ti.

¿Clase? OwnerMixin(objeto):

def? get_query set(self):

qs? =?super(propietario mínimo,?auto). get_queryset()

¿Regresión? Filtro QS (propietario = self . request . user)

¿Clase? OwnerEditMixin(objeto):

def? form_valid (self, ? formulario):

Formulario. Ejemplo. ¿dueño? =?Yo. preguntar. Usuario

¿Volver? super(PropietarioEditMixin, ? self).

form_valid (formulario)

¿Clase? OwnerCourseMixin(OwnerMixin, ?LoginRequiredMixin):

¿Modelo? =?Curso

Campos? =?['Tema',? título',? ¿Babosas? Descripción general ‘]

¿Success_url? =?reverse_lazy(‘Administrar lista de cursos‘)

¿Ir a clase? OwnerCourseEditMinxin(OwnerCourseMixin, ?OwnerEditMixin):

¿Campos? =?['Tema',? título',? ¿Babosas? Descripción general ‘]

¿Success_url? =?reverse_lazy('Administrar lista de cursos')

¿Nombre de la plantilla? =?cursos/administrar/curso/formulario html

¿Clase? ManageCourseListView(OwnerCourseMixin, ? ListView):

¿Nombre de la plantilla? =?cursos/administrar/curso/lista html

¿Clase? CourseCreateView(permissionrequiredmin,

OwnerCourseEditMinxin,

CreateView):

¿Se requiere permiso? =?courses.add_course

¿Tomar una clase? CourseUpdateView (permissionrequiredmin,

OwnerCourseEditMinxin,

UpdateView):

¿Se requiere permiso? =?'cursos .cambiar_curso'

¿Clases? CourseDeleteView (permissionrequiredminix,

OwnerCourseMixin,

eliminar vista):

¿Nombre de la plantilla? =?cursos/administrar/curso/eliminar .html

success_url? =?reverse_lazy('Administrar lista de cursos')

¿Necesita permiso? =?cursos.delete_course

¿Clase? CourseModuleUpdateView(TemplateResponseMixin, ? Ver):

¿Nombre de la plantilla? =?cursos/manage/module/formset html

¿Por supuesto? =?Nadie

definitivamente? get_formet(self, ?data=None):

¿Regresión? ModuleFormSet(instancia = self . curso,

datos = datos)

def? Despacho(self,?request,?pk):

¿Curso de autoaprendizaje? =?get_object_or_404 (por supuesto, ?id=pk, ?owner=request.user)

¿Regresión? super(CourseModuleUpdateView, ? yo).

despacho(solicitud,?pk)

def? get(self, ?request, ?*args, **quart):

¿Formset? =?self.get_formset()

¿Regresión? self . render _ to _ respuesta ({'curso': curso de autoaprendizaje,

formSet": ? formset})

def ? publicar (self, ? solicitud, ?* args, * * cuarto):

formset? =?self.get_formset(data = request.post)

if? formset.save()

return("administrar lista de cursos")

return ? render_to_response({'curso': curso de autoaprendizaje,

Formset":?formset})

¿Clase? ContentCreateUpdateView(TemplateResponseMixin, ? Ver):

¿Módulo? =?Ninguno

¿Modelo? =?Nadie

obj? =?Nadie

¿Nombre de la plantilla? =?cursos/manage/content/form .html

def? get_model(self,? nombre del modelo):

si? ¿Nombre del modelo? ¿existir? 【'texto',? video',? imagen',? Archivo "]:

¿Regresión? apps.get_model(app_label='cursos',

model_name=model_name)

¿Regresión? Ninguna persona

def ?get_form(self, ?model?*args, **quart):

form ? = ?modelform_factory(model, ?exclude = ['propietario ',

Orden ',

Creado',

Actualizado'])

¿Devolver formulario(*args,? * *cuarto)

def ? despacho(self, ?request, ?module_id, ?model_name ?id = Ninguno):

módulo propio ? = ?get_object_or_404(módulo, ?

id = ID del módulo,

curso__owner=request.user)

¿Automodelo? =?self.get_model (nombre del modelo)

if ?id:

self. obj?=?get_object_or_404(self.model,?id=id,?owner=request.user)

return ? super(ContentCreateUpdateView, ? self).

programar(solicitud,?module_id,?model_name?id)

def? get(self, ?request, ?moduleid, ?modelname?id=None):

¿Formulario? =?self.get_form(self.model,?instance=self.obj)

¿Regresión? self . render_to_response({'form:'?form?object':?self.obj})

def ?publish(self, ?request, ?moduleid, ?modelname?id = Ninguno):

¿Formulario? =?self.get_form(self.model,

instancia=self.obj,

data=request.posts,

file = request.file)

if? form.is_valid():

obj?=?form.save(commit=False)

p>

Propietario ?=?usuario

obj.save()

Imprimir? amp amp amp amp amp amp

¿Qué pasa si? ¿Imprimir?

object.create(module=self.module,

item=obj)

Imprimir? p>

return('modulecontent-list) ', ?self.module.id)

return ?self . render_to_response({'form: '?form?object' :? self.obj})

¿Clase? ContentDeleteView(vista):

def? publicar(self, ?solicitud, ?id):

¿Contenido? =?get_object_or_404(content,

id=id,

module__course__owner=request.user)

¿Módulo? =?Contenido. Módulo

content.item.delete()

Contenido.

eliminar()

¿Regresión? Redirect('Lista de contenidos del módulo', ? module.id)

¿Clase? ModuleContentListView(TemplateResponseMixin, ? view):

¿Nombre de la plantilla? =?cursos/manage/module/content_list .html

def? get(self,?request,?module_id):

¿Módulo? =?get_object_or_404(módulo,

id=moduleid,

curso__propietario=request.user)

¿Regresión? self . render _ to _ respuesta ({'módulo': módulo})

¿Clase? ModuleOrderView(csrfexamptmixin,

JsonRequestResponseMixin,

vista):

def? publicar(self, ?request):

¿Para qué? identificación,? ¿Orden? ¿existir? self.request_json.items():

módulo objetos .filtro (id = id,

curso__propietario = request.user). actualizar(pedido=pedido)

¿Volver? self . render_JSON_response({'saved': ok'})

¿Clase? ContentOrderView(csrfexamptmixin,

JsonRequestResponseMixin,

vista):

def? publicar(self, ?request):

¿Para qué? identificación,? ¿Orden? ¿existir? self.request_json.items():

Contenido. objeto. filtro(id=id,

módulo__curso__propietario=solicitud.usuario)

.

actualizar(pedido=pedido)

¿Volver? self . render_JSON_response({'saved': ok'})

¿Clase? vista de lista del curso (TemplateResponseMixin, ? vista):

¿Modelo? =?Curso

¿Nombre de la plantilla? =?cursos/curso/lista .html‘

def? get(self, ?request, ?subject=None):

¿Asunto? =?Subject.objects.annotate(

total _ cursos = Count('cursos')

)

¿Cursos? =?Course.objects.annotate(

total _ módulos = Count('módulos')

)

¿Si? Tema:

¿Tema? =?get_object_or_404(subject,?slug=subject)

¿Curso? =?cursos.filter(subject=subject)

¿Imprimir? '************',?sujeto? ¿curso? Asunto

¿Regresar? self . renderizar _ a _ respuesta ({'sub gets: asunto,

topic": ? asunto,

'curso': curso})

Clase ? Vista detallada del curso (vista detallada):

¿Modelo? =?Curso

¿Nombre de la plantilla? =?cursos/curso/detalle.html

def? (self, ? *Quart):

Context ? = ?super(CourseDetailView,

self). (

inicial = {'curso:'?self.object})

¿Entorno de retorno