Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

'function' object has no attribute 'as_view'

I am trying to use class based views, and get a strange error. The way I'm using the view seems to be the normal way:

ingredients/models.py:

from django.db import models from django.utils import timezone   class Ingredient(models.Model):     name        = models.CharField(max_length=255)     description = models.TextField()      def get_prices():         purchases   = self.purchase_set.all()         prices      = [purchase.price for purchase in purchases] 

ingredients/views.py:

from django.shortcuts           import render, render_to_response, redirect from django.http                import HttpResponse, HttpResponseRedirect from django.views.generic.edit  import CreateView from .models                    import Ingredient, Purchase  def IngredientCreateView(CreateView):     model = Ingredient     fields = ['all'] 

ingredients/urls.py:

from django.conf.urls import patterns, include, url  from ingredients.views import IngredientCreateView  urlpatterns = patterns('',                 url(r'^new_ingredient$',          IngredientCreateView.as_view(),             name='new-ingredient'), ) 

I get

AttributeError at /ingredients/new_ingredient 'function' object has no attribute 'as_view' 

I am on django 1.8.5. Why won't this view work? Thank you

like image 368
codyc4321 Avatar asked Dec 11 '15 06:12

codyc4321


1 Answers

IngredientCreateView should be a class. So your views.py replace:

def IngredientCreateView(CreateView): 

with:

class IngredientCreateView(CreateView): 
like image 130
Anush Devendra Avatar answered Sep 20 '22 13:09

Anush Devendra