Вам необходимо изменить эту строку
new_books = Book.objects.order_by('-book_date')[:4]
на
new_books = Book.objects.order_by('-book_date')[:4]
, потому что order_by
доступно в менеджере моделей.
Обновление:
def index(request):
new_books = Book.order_by('-book_date')[:4]
bestselling_books = Book.objects.filter(is_best_selling=True)[:4]
advertises = Advertise.objects.all()
book_context = {
'new_books': new_books,
'bestselling_books': bestselling_books,
'advertises': advertises
}
return render(request, 'pages/index.html', book_context)
Наиболее разработанным решением Django является Satchmo с поддержкой Authorize.Net, TrustCommerce, CyberSource, PayPal, Google Checkout и Protx.
Новым ребенком в блоке Django является django-lfs , который на данный момент выглядит только как поддержка PayPal, и даже это может быть не полным.
Для общего Python основным игроком является getpaid
Возможно, вы найдете несколько полезных подсказок / модулей кода, глядя на Satchmo: Домашняя страница Satchmo
Django paypal - это очень круто. Я участвовал в нескольких своих проектах. Его относительно легко интегрировать с существующим веб-сайтом. Satchmo хорош, если вам нужен полноценный интернет-магазин, но если вы хотите продать всего пару товаров со своего веб-сайта, который посвящен чему-то другому, вы обнаружите, что Satchmo очень тяжелый (установка множества зависимостей действительно усложняет ваш админ).