query1 = from(s in Score, where: s.user_id == ^who_score_id2, update: [dec: [wallet: -String.to_integer(attrs["send_char"])]])
Читать полностью…#functional #JavaScript
Clio is a functional, distributed programming language that compiles to JavaScript. It runs in the browser and on the server and is made to be a suitable language for scientific programming.
Я так понял надо обращаться к @Virviil
За меня тут просили, но так и не разблокировали.
Здравствуйте, добавьте меня пожалуйста в канал pro.elixir, я похоже даже не успел туда войти как меня забанили, ну либо этого канала не существует.
Читать полностью…Это есть и в книге "Введение в elixir", насколько помню про if.
Но главное это есть в документации к языку. На hexdocs.pm/elixir
Например в разделе case
"Variable handling
Note that variables bound in a clause do not leak to the outer context...
When binding variables with the same names as variables in the outer context, the variables in the outer context are not affected."
Case и if и cond - это макросы, работают как замыкания, что внутри блока определено, снаружи не видно. Поэтому результат возвращаемый ими связывается с переменной, если нужно в дальнейшем использовать. Чтобы внешнюю переменную использовать для паттерн матчинга внутри блока используется ^ но переменную не пересвязать внутри.
data = {:ok, 3}напечатает 3 потом 2 Читать полностью…
value = 3
new_value = case data do
{:ok, ^value} -> value = 2
:error -> nil
end
IO.puts value
IO.puts(new_value)
new_variable = case check_string_or_number_of_display do
true -> 0
false -> Reg1Web.LayoutView.title(conn)
end
а почему ф-ция - это особенность эликсира, интерпретирует new_variable как вызов ф-ции без скобок. Где-то есть более каноничное объяснение.
+ я бы заменил здесь case на if
new_variable = if check_string_or_number_of_display do
0
else
Reg1Web.LayoutView.title(conn)
end
query1 = from(s in Score, where: s.user_id == ^who_score_id2,
update: [dec: [wallet: String.to_integer(attrs["send_char"])]])
#ecto #elixir
A free 13-screencast series on Ecto, for beginners
https://alchemist.camp/episodes
https://www.youtube.com/watch?v=K6zuu_dFg-g&list=PLFhQVxlaKQElscjMvMmyMCaZ9mxf4XAw-&index=2
check_string_or_number_of_display = is_binary(Reg1Web.LayoutView.title(conn))
case check_string_or_number_of_display do
true -> new_variable = 0
false -> new_variable = Reg1Web.LayoutView.title(conn)
end
каждый раз с одной и той же проблемой сталкиваюсь, и не могу сообразить, почему выдает undefined function new_variable/0 ? почему она не переменная, а функция?