Programming Phoenix LiveView: Accessing Changeset in form {page 199}

Similar to other post, need to access and assign changeset differently:

        <.input
        field={@changeset[:gender]}
        type="select"
        label="Gender"
        options={["female", "male", "prefer not to say"]}/>

        <.input
        field={@changeset[:year_of_birth]}
        type="select"
        label="Year of birth"
        options={Enum.reverse(1920..2023)}/>

        <.input
        field={@changeset[:user_id]}
        type="hidden"/>
  defp assign_changeset(
         %{
           assigns: %{
             demographic: demographic
           }
         } = socket
       ) do
    assign(socket, :changeset, to_form(Survey.change_demographic(demographic)))
  end