how to avoid circular imports in helpers.py

Ok, so there are a couple points here worth making.

First:

Not only is it “not a big deal”, but it’s documented as existing for this specific reason. That hardly makes it a “hacky workaround”.

The other, more opinionated topic is the very existance of this “helpers.py” file. Even though you have chosen a different name, you’re effectively talking about something usually referred to as a “services” layer.

It’s interesting to me that we’ve had at least three separate discussion threads on this basic topic in the past week or so.

I suggest you see the threads (and the links contained within them) at:

(among others)

Reader’s Digest version: If I were coding this, there wouldn’t be a “helper” file. As far as I’m concerned, the logic belongs elsewhere - either the views.py or the models.py as appropriate.