** (ArgumentError) assign @templates not available in eex template

i have two schemas of which templates belong to users. but when creating a template i receive

iex> [error] #PID<0.15384.0> running SmartcomClientWeb.Endpoint (connection #PID<0.15383.0>, stream id 1) terminated
Server: localhost:4000 (http)
Request: POST /create/template
** (exit) an exception was raised:
** (ArgumentError) assign @templates not available in eex template.

Please make sure all proper assigns have been set. If this
is a child template, ensure assigns are given explicitly by
the parent template as they are not automatically forwarded.

Available assigns: [:changeset, :conn, :view_module, :view_template]

FOLLOWED by

iex(232)> [debug] Processing with SmartcomClientWeb.UserController.create/2
Parameters: %{}
Pipelines: []
iex(232)> [info] Sent 500 in 47ms
iex(232)> [error] #PID<0.15386.0> running SmartcomClientWeb.Endpoint (connection #PID<0.15383.0>, stream id 2) terminated
Server: localhost:4000 (http)
Request: POST /system/users
** (exit) an exception was raised:
** (ArgumentError) assign @users not available in eex template.

Please make sure all proper assigns have been set. If this
is a child template, ensure assigns are given explicitly by
the parent template as they are not automatically forwarded.

Available assigns: [:changeset, :conn, :view_module, :view_template]

Here are my create function for templates

 case Templates.create_template(params) do
   {:ok, template} ->
    conn
        |> put_flash(:info, "Template created successfully.")
         |> redirect(to: Routes.template_path(conn, :show, template))
  {:error, %Ecto.Changeset{} = changeset} ->
    render(conn, "index.html", changeset: changeset )
end

end

here are my create function for users

IO.inspect(params, label: "PARAMS>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")
case Accounts.create_user(params) do
  {:ok, user} ->
    conn
    |> put_flash(:info, "User created successfully.")
    |> redirect(to: Routes.user_path(conn, :show, user))
  {:error, %Ecto.Changeset{} = changeset} ->
    render(conn, "index.html", changeset: changeset)
end

end

do note i am using ajax to post data to mssql db

    $.ajax({
        type: 'POST',
        url: '/create/template',
        data: $("form.user-form").serialize(),
        success:  function(response) {
            console.log(response)
        },
        error: function (error) {
            console.log(error)
        }
    })
    })

You are using normal controllers but it should be api controllers, returning json instead…

and when there is an error, it redirects to index, which needs @users, but You don’t define them.