Multi-page, or multi-step, forms are a common way to manage complex user inputs. This technical post outlines the techniques we use to build them in Django.
Articles by Noel Taylor
How to keep all your websites in sync with scraping technology
Would you like to pull in the header and/or footer from a related but separate website for use on your own pages? Here's how.
Using HubSpot’s Custom CRM Cards Without an Integration
The marketing software company HubSpot offers a nifty feature called "custom CRM cards." The idea is that a HubSpot dashboard can send a GET request to an API that you maintain, retrieve some JSON-formatted information and render it in some "cards" alongside other data. One of our clients wished to use…
Website Search using Django and PostgreSQL Trigrams
Over the years I've become increasingly wary of the word "easy" in software documentation. Pick a software project at random, and there's a good chance the documentation will lead off with something like "Booloogent makes the process of frobnifying your wakalixes easy!" And then you try to use the package...
Guide to Ansible/NGINX/uWSGI/Django, Part 2: Getting uWSGI Working with NGINX and Django
In Part 1 of this post, I described the trials, tribulations and ultimate success of running Ansible to provision a cloud server, which we do often here at Imaginary Landscape. Part 2 concludes the post by describing the process for getting uWSGI working with NGINX and Django. When I first tested the...
Guide to Ansible/NGINX/uWSGI/Django, Part 1: Running the Ansible Scripts
Here at Imaginary Landscape, we are frequently tasked with spinning up new cloud servers for our clients. Once a new server is online, we usually follow up by provisioning it with useful software. To automate that process, we began using Ansible a few years ago, and have had a lot...
Scraping pdf, doc, and docx with Scrapy
In February 2017, Google announced its plans to discontinue its Google Site Search product. Those clients of Imaginary Landscape who had relied on Google to provide their users with a search engine service for their website looked to us for a new solution. Finding no obvious equivalent replacement, we decided to create our own website scraper and accompanying search app.
Braintree Integration with Django
Braintree Integration in Django Introduction Much has been written about how to implement online payment using the services available from Braintree, but not much has been written about how to do it within a Django framework. Combining the two does not require any special contortions, but as Braintree’s own online...
A Python Solution for Making Custom PDFs from HTML
The client wanted to give their users the option of printing completed forms to a pdf file. They also wanted the pdf to be rendered with formatting and style that varied slightly from the online display of the completed form, and so desired a solution other than the browser’s own...