Size: a a a

Эликсир и Вунш

2017 April 18

A

AMar4enko in Эликсир и Вунш
Может статус там какой или хэдер
источник

ME

Marsel Etsamoe in Эликсир и Вунш
в смысле перед вызовом canary?
источник

A

AMar4enko in Эликсир и Вунш
Например. Если есть репозиторий - я бы тоже глянул
источник

ME

Marsel Etsamoe in Эликсир и Вунш
с репозиторием пока трудновато, постараюсь
источник

ME

Marsel Etsamoe in Эликсир и Вунш
вот что в conn получается
источник

ME

Marsel Etsamoe in Эликсир и Вунш
pry(1)> conn
%Plug.Conn{adapter: {Plug.Adapters.Cowboy.Conn, :...},
assigns: %{budget: nil,
  current_user: %MyApp.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">,
   budgets: [%MyApp.Budget{__meta__: #Ecto.Schema.Metadata<:loaded, "budgets">,
     balance: 1.3e3,
     categories: #Ecto.Association.NotLoaded<association :categories is not loaded>,
     id: 1, inserted_at: ~N[2017-04-15 15:00:38.727984], name: "new name",
     updated_at: ~N[2017-04-15 15:45:08.860944],
     users: #Ecto.Association.NotLoaded<association :users is not loaded>},
    %MyApp.Budget{__meta__: #Ecto.Schema.Metadata<:loaded, "budgets">,
     balance: 0.0,
     categories: #Ecto.Association.NotLoaded<association :categories is not loaded>,
     id: 2, inserted_at: ~N[2017-04-15 15:00:59.396742], name: "test1",
     updated_at: ~N[2017-04-15 15:00:59.396747],
     users: #Ecto.Association.NotLoaded<association :users is not loaded>},
    %MyApp.Budget{__meta__: #Ecto.Schema.Metadata<:loaded, "budgets">,
     balance: 0.0,
     categories: #Ecto.Association.NotLoaded<association :categories is not loaded>,
     id: 3, inserted_at: ~N[2017-04-15 15:01:56.845078], name: "test0",
     updated_at: ~N[2017-04-15 15:01:56.845085],
     users: #Ecto.Association.NotLoaded<association :users is not loaded>},
    %MyApp.Budget{__meta__: #Ecto.Schema.Metadata<:loaded, "budgets">,
     balance: 0.0,
     categories: #Ecto.Association.NotLoaded<association :categories is not loaded>,
     id: 4, inserted_at: ~N[2017-04-15 15:04:25.647952], name: "testtt",
     updated_at: ~N[2017-04-15 15:04:25.647958],
     users: #Ecto.Association.NotLoaded<association :users is not loaded>}],
   confirmation_token: nil, confirmed: false, id: 1,
   inserted_at: ~N[2017-04-15 14:58:48.263515], login: "test user0",
   password: nil,
   password_hash: "$2b$12$8yt6WNBt5hyxZE1MqiZtX.YRuReOuy4zom1imQvK2Q.Dw6pc8iNSG",
   reset_password_token: nil,
   sessions: #Ecto.Association.NotLoaded<association :sessions is not loaded>,
   updated_at: ~N[2017-04-15 14:58:48.268564]}},
before_send: [#Function<1.119692487/1 in Plug.Logger.call/2>,
 #Function<0.111727833/1 in Phoenix.LiveReloader.before_send_inject_reloader/2>],
body_params: %{}, cookies: %Plug.Conn.Unfetched{aspect: :cookies},
halted: false, host: "localhost", method: "GET", owner: #PID<0.733.0>,
params: %{"id" => "11"}, path_info: ["api", "v1", "budgets", "11"],
path_params: %{}, peer: {{127, 0, 0, 1}, 49278}, port: 4000,
private: %{MyApp.Router => {[], %{}}, :phoenix_action => :show,
  :phoenix_controller => MyApp.V1.BudgetController,
  :phoenix_endpoint => MyApp.Endpoint, :phoenix_format => "json",
  :phoenix_layout => {MyApp.LayoutView, :app},
  :phoenix_pipelines => [:api],
  :phoenix_route => #Function<40.35152895/1 in MyApp.Router.match_route/4>,
  :phoenix_router => MyApp.Router,
  :phoenix_view => MyApp.V1.BudgetView,
  :plug_session_fetch => #Function<1.131660147/1 in Plug.Session.fetch_session/1>},
query_params: %{}, query_string: "", remote_ip: {127, 0, 0, 1},
req_cookies: %Plug.Conn.Unfetched{aspect: :cookies},
req_headers: [{"host", "localhost:4000"},
 {"authorization",
  "Token 6WIkDYi72CIEjDlN17pYXb93uHNUWUL5c4D1BG7OfQr1XlsNvlLOsj3FLf468OGS"},
 {"content-type", "application/json"}], request_path: "/api/v1/budgets/11",
resp_body: nil, resp_cookies: %{},
resp_headers: [{"cache-control", "max-age=0, private, must-revalidate"},
 {"x-request-id", "6s75c6t0k1ss56n65oiohnja3hkqmvg4"}], scheme: :http,
script_name: [],
secret_key_base: "TJaH1OYzjoJwS1B0GbLGd9NcUMqT5AVc3f4+FTy/hWm+6YgIx28LInTzIKM8CuZY",
state: :unset, status: nil}
источник

ME

Marsel Etsamoe in Эликсир и Вунш
тут Operation просто заменен на Budget
источник

A

AMar4enko in Эликсир и Вунш
state: :unset
источник

A

AMar4enko in Эликсир и Вунш
Интересно
источник

ME

Marsel Etsamoe in Эликсир и Вунш
это я вывел перед окончанием работы функции do_authorize_resource в canary
источник

ME

Marsel Etsamoe in Эликсир и Вунш
перед подключением этого canary у меня есть plug еще один, там проверяю токен
источник

A

AMar4enko in Эликсир и Вунш
источник

A

AMar4enko in Эликсир и Вунш
Там еще есть проверка, которая пропустит этот хэндлер, если action в non_id_actions
источник

ME

Marsel Etsamoe in Эликсир и Вунш
у меня не указан non_id_actions
источник

A

AMar4enko in Эликсир и Вунш
А как action называется?
источник

ME

Marsel Etsamoe in Эликсир и Вунш
show
источник

A

AMar4enko in Эликсир и Вунш
Ну последнее, где может быть факап, это он не находит твой хэндлер
источник

AS

Alik Send in Эликсир и Вунш
Я извиняюсь, но не лучше было бы сделать вопрос на тостере, например, и позвать туда всех желающих? Я не думаю что всем 105 участникам интересна эта тема. Спасибо
источник

ME

Marsel Etsamoe in Эликсир и Вунш
принято, откланиваюсь. спасибо за участие
источник

ME

Marsel Etsamoe in Эликсир и Вунш
если вдруг кто-то заинтересуется - https://github.com/cpjk/canary/issues/57 , но решения пока не нашли
источник