Skip to content

Instantly share code, notes, and snippets.

@davemerwin
davemerwin / Step By Step Virtualenv, Django, Postgres, NGINX, Gunicorn, HTTPS on DigitalOcean
Last active March 5, 2024 01:50
This is every step, in detail, to create a Django App with Postgres, NGINX, Gunicorn, and HTTPS on Digital Ocean. The only thing I don't go over is how to create a droplet and manage the domain.
Reference:
Django/Postgres/Nginx/Gunicorn in Ubuntu: https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04
Encryption: https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04
Where you see "user", "myproject" and "myprojectuser" replace that with what is relevent to what you are working on.
User Setup
$ ssh root@SERVER_IP_ADDRESS
Complete login process
@davemerwin
davemerwin / DJANGO-HTMX Class Based View Request Grab to Change Templates
Last active May 23, 2023 15:34
An example of a Class Based View using django-htmx to determine what template to return
class AddImage(LoginRequiredMixin, CreateView):
"""
adds a image
"""
form_class = ImageForm
model = Image
def get_template_names(self):
if self.request.htmx:
@davemerwin
davemerwin / image_formats.py
Created March 19, 2021 17:17
Image Classes For Richtext Image in Wagtail with Tailwind
from django.utils.translation import gettext_lazy as _
from wagtail.images.formats import Format, register_image_format, unregister_image_format
unregister_image_format('fullwidth')
register_image_format(Format('fullwidth', _('Full width'), 'w-100 rounded-lg', 'width-800'))
unregister_image_format('left')
register_image_format(Format('left', _('Left-aligned'), 'w-1/2 float-left rounded-lg', 'width-800'))
unregister_image_format('right')
@davemerwin
davemerwin / Django Rest Framework Complete Relational Example
Last active October 31, 2020 09:45
This is a (mostly) complete relationship example of a parent child relationship via Django Rest Framework
# This example will allow you to manipluate a Parent and a Child via various endpoints
# /api - All endpoints
# /api/parents - Parents list
# /api/parents/(?P<pk>\d+) - Parent detail
# /api/parents/(?P<pk>\d+)/children - List of children of parent
# /api/children - Child list
# /api/children/(?P<pk>\d+) - Child Detail
# Models - models.py
# Pretty simple setup. Children have a FK to parent
@davemerwin
davemerwin / things-to-know.txt
Last active June 5, 2020 17:17
This is a collection of things to know that I always forget
Digialocean
Postgres
To dump: pg_dump -h localhost -U USERNAME DATABASENMAE > /home/NAME/DATABASENAME.sql
To import: psql -h localhost -U username databasename < databasename.sql
Python
python3 -m venv /path/to/new/virtual/environment
find . -name '*.pyc' -delete - gets rid of old .pyc files
@davemerwin
davemerwin / gist:a256a2f5fba56f2c8ed5ead83aa297ab
Last active May 28, 2020 22:14
Some sane defaults for a Nuxtjs, eslintrc file for VSCode
module.exports = {
root: true,
env: {
browser: true,
node: true
},
parserOptions: {
parser: 'babel-eslint'
},
extends: [
@davemerwin
davemerwin / gist:5265211
Created March 28, 2013 17:33
This is the settings for displaying Symbolset fonts so that Firefox will show them. Replace "domainname" with your domain name.
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/x-font-woff woff
<FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "http://*.domainname.org"
</IfModule>
</FilesMatch>
behavior: url(http://path-to-file.com/ie-css3.htc); /* Add me to any box or text shadow and rounded corner object to execute in IE7 and 8 */
$('#slideshow').loopedSlider({
addPagination: true,
slides: ".slides",
containerClick: true,
autoStart: 6000,
fadespeed: 2000,
});
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/home/XXXXXXXXX/webapps/XXXXXXXXX/lib/python2.5/django/core/management/__init__.py", line 362, in execute_manager
utility.execute()
File "/home/XXXXXXXXX/webapps/XXXXXXXXX/lib/python2.5/django/core/management/__init__.py", line 303, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/XXXXXXXXX/webapps/XXXXXXXXX/lib/python2.5/django/core/management/base.py", line 195, in run_from_argv
self.execute(*args, **options.__dict__)
File "/home/XXXXXXXXX/webapps/XXXXXXXXX/lib/python2.5/django/core/management/base.py", line 222, in execute