假设我有类似的东西:
Enum.map(list, fn(x) -> String.duplicate("a", someValue * x) end)
Run Code Online (Sandbox Code Playgroud)
但相反,我想将String.duplicate/2函数作为参数传递,以简化我的代码:
Enum.map(list, &String.duplicate/2)
Run Code Online (Sandbox Code Playgroud)
我知道你可以为arity 1功能做到这一点:
Enum.map(list, &String.downcase/1)
Run Code Online (Sandbox Code Playgroud)
谢谢!
所以我正在尝试将JQueryUI与TypeScript一起使用,到目前为止,我已经安装了JQueryUI npm install jquery-ui-dist和JQuery npm install jquery.我还使用npm install --save-dev @types/jquery和添加了DefinitelyTyped的定义文件npm install --save-dev @types/jquery-ui.
我有以下文件(省略了一些部分):
///<reference path="../../node_modules/@types/jqueryui/index.d.ts"/>
import * as $ from "jquery";
import "jquery-ui";
export default class Resizer {
public static extraMargin = 5;
public static setVerticalResizer(...) {
...
let topElem: HTMLElement = <HTMLElement> cardElem.querySelector(".my-class");
$(topElem).resizable({
...
});
}
}
Run Code Online (Sandbox Code Playgroud)
在构建和运行时,我收到以下错误:
Uncaught TypeError: r(...).resizable is not a function
所以我猜我导入JQueryUI的方式有问题吗?或者可能没有正确安装JQueryUI?虽然导入和定义似乎在VS Code中正常工作.
这也是我在HTML文件中使用它们的方式:
<script src="node_modules/jquery-ui-dist/jquery-ui.mis.js"></script>
<link rel="stylesheet" href="node_modules/jquery-ui-dist/jquery-ui.min.css">
Run Code Online (Sandbox Code Playgroud)
有关如何解决问题和使用TypeScript的JQueryUI的任何想法?
我正在使用Phoenix Framework构建应用程序,我已经完成了所有CRUD操作,但更新/编辑了一个.我已阅读并完成了编程凤凰书,但我仍然无法进行更新操作.我认为问题是我需要以某种方式覆盖POST方法.
这是我更新的变更集:
def changeset_update(model, params \\ :empty) do
model
|> cast(params, [], [])
|> validate_length(:username, min: 1, max: 20)
end
Run Code Online (Sandbox Code Playgroud)
我在控制器中的动作:
def update(conn, %{"user" => user_params, "id" => id}) do
user = Repo.get!(User, id)
changeset = User.changeset_update(%User{}, user_params)
IO.puts changeset.valid?
case Repo.update(changeset) do
{:ok, user} ->
conn
|> put_flash(:info, "#{user.name} updated successfully!")
|> redirect(to: user_path(conn, :show, id: id))
{:error, changeset} ->
render conn, "edit.html", changeset: changeset, user: user
end
end
Run Code Online (Sandbox Code Playgroud)
和我的页面:
<h1>Edit User</h1>
<%= form_for @changeset, admin_path(@conn, :update, @user), …Run Code Online (Sandbox Code Playgroud)我正在尝试填充一个字段 :params (来自模型/架构),它是一个地图。我有一个可用的 form_for,我想通过复选框填充这个 :params 映射,以便在提交表单时控制器将收到类似%{... params => %{"param1" => "true", "param2" => "false"}} ...
我看过inputs_for,但这似乎并没有做我需要的,因为它依赖于嵌套模式和模型,这意味着我需要为每组新参数创建一个新模式(我需要一些通用的如果参数发生变化,则不需要更改源代码)。
<%= form_for @changeset, audit_audit_path(@conn, :new_tool_request, @audit.id),
fn f -> %>
<%= render LayoutView, "changeset_error.html", conn: @conn, changeset: @changeset, f: f %>
<div class="form-group"><label>Tool</label>
<%= select f, :toolname, tools %>
</div>
<div class="form-group"><label>Parameter 1</label>
<%= checkbox f, :param1 %>
</div>
<div class="form-group"><label>Parameter 2</label>
<%= checkbox f, :param2 %>
</div>
<div class="form-group"><label>Date of Execution</label>
<%= datetime_select f, :date %>
</div>
<div class="form-group">
<%= hidden_input f, …Run Code Online (Sandbox Code Playgroud) 所以我一直在阅读 GitHub 开发人员文档和关于 webhooks 他们有以下声明:
Webhooks 允许您构建或设置订阅 GitHub.com 上某些事件的 GitHub 应用程序。当这些事件之一被触发时,我们将向 webhook 的配置 URL 发送一个 HTTP POST 负载。Webhooks 可用于更新外部问题跟踪器、触发 CI 构建、更新备份镜像,甚至部署到您的生产服务器。你只受限于你的想象力。
但是,关于应用程序,他们也有这样的声明:
GitHub 上的应用程序扩展并改进了现有的工作流程。人们可以从 GitHub Marketplace 购买应用程序,或者在 Works with GitHub 中浏览与 GitHub 集成的有用工具和服务。
如果您正在构建或添加集成,本文档将帮助您启动和运行。
有关与 GitHub 应用程序(而非 OAuth 应用程序)相关的支持请求、错误报告和讨论,请使用 GitHub 平台论坛。该论坛允许您与其他集成商以及来自 GitHub 的工程师和产品经理合作。
如果您的请求与 OAuth 应用程序有关,或者您需要讨论私人问题,请直接联系支持人员。
这似乎 Webhooks 只能与 GitHub Apps 一起使用?GitHub 应用程序和 GitHub OAuth 应用程序之间的区别不是很清楚,我不明白为什么 OAuth 应用程序不能使用 Webhooks?
我有一个运行在Docker容器中的Elixir应用程序(在我的笔记本电脑中)。Elixir应用程序使用以下命令执行:
iex \
--name test@1.2.3.4 \
--cookie secret \
--erl '-kernel inet_dist_listen_min 9000' \
--erl '-kernel inet_dist_listen_max 9000' \
-S mix phx.server
Run Code Online (Sandbox Code Playgroud)
Docker容器公开以下端口:
0.0.0.0:4000->4000/tcp, 0.0.0.0:4369->4369/tcp, 0.0.0.0:9000->9000/tcp
然后,我尝试使用以下命令使用IEx Shell进行连接:
iex --name local@127.0.0.1 --cookie secret 导致此错误:
Protocol 'inet_tcp': register/listen error: epmd_close
这似乎是因为本地epmd守护程序正试图分配给端口4369,但是,这已经分配给了Docker容器。
然后,我像这样更改了EPMD端口:
ERL_EPMD_PORT=4370 iex --name local@127.0.0.1 --cookie secret
我设法打开了IEx会话。但是,我找不到在Docker容器上运行的节点:
iex(local@127.0.0.1)1> Node.connect :'test@1.2.3.4'
false
Run Code Online (Sandbox Code Playgroud)
我不确定该如何解决。我正在关注此博客文章。
我正在尝试旋转一个对象(箭头),它的默认位置指向右边.我一直在环顾四周,我正在使用glLoadIdentity()和glPushMatrix()以及glPopMatrix()作为仅在我的glBegin函数中旋转对象而不是整个场景的方法:
glLoadIdentity();
glPushMatrix();
glRotatef(5, 0.0f, 0.0f, 1.0f);
glBegin(GL_TRIANGLE_FAN);
glColor3f(1.0f, 0.0f, 1.0f);
glVertex2f(xx2-0.01, yy2);
glVertex2f(xx2-0.06, yy2+0.03);
glVertex2f(xx2-0.06, yy2-0.03);
glEnd();
glPopMatrix();
Run Code Online (Sandbox Code Playgroud)
但是,它也会翻译我的箭头,而不是只旋转它.我是否需要将偏移量转换回原始位置?或者我做错了什么?
解决了:
glLoadIdentity();
glPushMatrix();
glTranslatef(xx2, yy2, 0);
glRotatef(45, 0.0f, 0.0f, 1.0f);
glTranslatef(-xx2, -yy2, 0);
glBegin(GL_TRIANGLE_FAN);
glColor3f(1.0f, 0.0f, 1.0f);
glVertex2f(xx2-0.01, yy2);
glVertex2f(xx2-0.06, yy2+0.03);
glVertex2f(xx2-0.06, yy2-0.03);
glEnd();
glPopMatrix();
Run Code Online (Sandbox Code Playgroud)
需要转换回中心(0,0,0),应用旋转然后回到它的原始位置(xx2,yy2,0)
所以我有一个属于用户的模型Ticket.每个用户都有很多票.因此user_id是每个Ticket的外键.如何构建一个查询,以获取每个用户的用户名所订购的所有票证?我一直在努力
query = from u in User,
preload: [:tickets]
query_tickets = from t in Ticket,
order_by: u.username,
preload: [users: ^query]
tickets = Repo.all(query_tickets)
Run Code Online (Sandbox Code Playgroud)
但它说模型Ticket没有任何用户关联?
schema "tickets" do
field :subject, :string
field :body, :string
field :followup, :boolean
field :closed, :boolean
field :file, :string
field :filepath, :map
belongs_to :user, UserController
has_many :ticket_message, TicketMessageController
timestamps
end
schema "users" do
field :name, :string
field :username, :string
field :password, :string, virtual: true
field :password_hash, :string
field :email, :string
field :client, :string
field :role, :integer
has_one …Run Code Online (Sandbox Code Playgroud)