How to redirect back to previous page in Elixir & Phoenix?

In this post, you'll learn how to easily redirect users to the previous path using the Navigation History plug.

Table of contents

    It's super easy, first add the plug to dependencies:

    def deps do
      [ 
        ...,
        {:navigation_history, "~> 0.3"}]
    end

    Then, add it to your pipeline of choice (in most cases it's gonna be :browser):

    pipeline :browser do
      ...
      plug NavigationHistory.Tracker
    end

    Now, you can use use available NavigationHistory.last_path/1 function to access the previous path:

    redirect(conn, to: NavigationHistory.last_path(conn))

    That's it! You can also exclude specific paths from navigation history:

    plug NavigationHistory.Tracker, excluded_paths: ["/login", ~r(/admin.*)]

    Find more details about this lib here: https://github.com/danhper/plug-navigation-history.

    Until next time!

    Check this article: Why Elixir & Phoenix is a great choice for your web app in 2022

    Szymon Soppa Web Developer
    Szymon Soppa Curiosum Founder & CEO

    Read more
    on #curiosum blog

    Context maintainability & guidelines in Elixir & Phoenix

    Context maintainability & guidelines in Elixir & Phoenix

    The concept of Phoenix Context may appear straightforward, yet its potential for significantly boosting Phoenix app maintainability is profound. However, the truth is many developers grapple with its effective implementation. In this blog post, I will unveil a strategic solution for optimizing context organization, a critical step towards sustainable and efficient Phoenix app development.