DEV Community

Jeff Triplett (he/him) for Django News

Posted on • Originally published at django-news.com on

Issue 36 - New Wagtail Release and results from the Django Developers Survey

News

Wagtail 2.10 Released

A major new release with a configurable workflow system, full page and site history, a design overhaul of the page editor, Django 3.1 support, search query expressions, bulk redirect importing, and more.


HTTPX 0.14.0 Released

A major new release in HTTPX, the async successor to Requests.


Django Developers Survey 2020

Results from the Django Developers Survey 2020 were released.


Python Insider: Python 3.9.0rc1 is now available

Python 3.9.0 is almost ready. This release, 3.9.0rc1, is the penultimate release preview.


Deadline to nominate someone for Quarter 3 consideration is August 20, 2020

If you want to recommend someone to be a PSF Fellow, you have until August 20th to do so.


Events

Django Boston August 2020 Virtual Event

Benjamin "Zags" Zagorsky will present "Rapid Prototyping in Django," a distilled set of lessons and recommendations for how to build a functional Django website in 2 days and not regret it later.


Articles

Django Views — The Right Way

An opinionated guide on how to write views in Django.


Using Postgres JSONB Fields in Django

In-depth look at using Postgres JSONFields in Django.


Customize the Django Admin With Python

A guide to updating the default Django admin in multiple ways.


How to Modernize a Django Index Definition with Zero Downtime by Adam Johnson

Upgrade to the newer meta way of maintaining Django model indexes.


Distributed Locking in Django

An overview of distributed locking, often required when an application scales out horizontally.


Tutorials

Dynamically Add Forms in Django with Formsets and JavaScript

This tutorial demonstrates how multiple copies of a form can be dynamically added to a page and processed using Django formsets and JavaScript.


Sponsored Link

Learn beginner to advanced Django

Learn beginner to advanced Django from Daniel "pydanny" Feldroy, co-author of Two Scoops of Django in live, online, interactive classes where students are encouraged to ask questions. Use discount code "django-news" to get 10% off all courses.


Projects

GitHub logo zinmyoswe / Django-Ecommerce

Ecommerce website built with Django 2.2.3, Python 3.7.3, Stripe and AWS

Django-Ecommerce

Ecommerce website built with Django 2.2.3, Python 3.7.3, and AWS

image

Product Slide

image

Shop Page image

Product Detail Page image

Cart Page image

BillingAddress Page image

Stripe Payment Page image

Order Success Page image

Installation

pip install django

virtualenv env

For Mac/ Linux

source env/bin/activate

For Window

env\scripts\activate

pip install -r requirements.txt

python manage.py makemigrations

python manage.py migrate

python manage.py runserver

For Admin Login

python manage.py createsuperuser
Username : admin
Password : 12345678
Enter fullscreen mode Exit fullscreen mode

Demo

http://djangoecommerce.pythonanywhere.com

HTML Template

https://colorlib.com/etc/fashe/index.html





GitHub logo aaronbassett / DisposableEmailChecker

Python class for use with Django to detect Disposable Emails

============================= django-disposable-email-checker

PyPI version PyPI version Requirements Status

Django package to detect between ~890 & ~8,600 domains used by disposable email services You can validate any email against our internal list of ~890 domains used by disposable email services. Optionally you can also check each domain against the Block-Disposable-Email.com API covering ~8,600 domains.

Setup

Install the disposable email checker from PyPI

pip install django-disposable-email-checker

The disposable email checker comes with a list of ~890 emails. If you would like to provide your own email list create a function which returns a list of domains to block.

from disposable_email_checker.emails import email_domain_loader

def custom_email_domain_loader():
    # Anyone still using AOL will be too much of a customer service burden
    return [
        "aol.com",
    ] + email_domain_loader()
Enter fullscreen mode Exit fullscreen mode

Then add the complete path including function name to your settings

DEC_LOADER = "my.package.custom_email_domain_loader"
Enter fullscreen mode Exit fullscreen mode

If you would like to use the BDE integration add your API key to your…


GitHub logo LeeHanYeong / django-secrets-manager

Django SecretsManager is a package that helps you manage the secrets used by Django through various services.

Django SecretsManager

Django SecretsManager is a package that helps you manage the secret values used by Django through variable services.

Installation

pip install django-secrets-manager

Requirements

  • Python >= 3.6
  • Django

Required settings for the settings module

  • AWS_SECRETS_MANAGER_SECRET_NAME (or AWS_SECRET_NAME)
    • Secret name of SecretsManager to use
  • AWS_SECRETS_MANAGER_SECRET_SECTION (or AWS_SECRET_SECTION)
    • The key that separates JSON objects by colons. ex) In the example below, the "production" item is represented as "sample-project:production".
  • AWS_SECRETS_MANAGER_REGION_NAME (or AWS_REGION_NAME)
    • Region of the SecretsManager service to use ex) ap-northeast-2

Secret value setting of AWS SecretsManager

SecretsManager's Secret value uses JSON format in Plaintext.
Here is an example Secret value to use for configuration, and the Secret (Corresponds to AWS_SECRETS_MANAGER_SECRET_NAME in the settings module) is named sample-project-secret

{
  "sample-project(Recommend the name of django project)": {
    "base(If the settings module is a package, submodule names are recommended)": {
      "SECRET_KEY": "DjangoSecretKey"
    }
    "dev": {
      "AWS_S3_BUCKET_NAME": 
…
Enter fullscreen mode Exit fullscreen mode

GitHub logo raagin / django-streamfield

This is a simple realisation of StreamField's idea from Wagtail CMS for plain Django admin or with Grappelli skin.

Django StreamField

This is a simple realisation of StreamField's idea of Wagtail CMS for plain Django admin or with Grappelli skin Stable version: 1.4.5

Highlights

You can build your page with different kind of blocks Sort them and sort the lists inside the blocks.

The blocks here are regular instances of Django models. For editing content inside the blocks, it use native popup mechanism in Django admin interface This allow you to use other field's widgets inside the blocks as is. For example, if you want to use in your blocks FileBrowseField from django-filebrowser, it will perfectly working without any additional settings.

Module also working with Grappelli Interface (Optional)

django-streamfield demo screenshot

Contents


Shameless Plugs

LearnDjango.com

All three books in the series--Django for Beginners, Django for APIs, and Django for Professionals--have been updated to Django 3.1.

Top comments (0)