我的基本问题是如何使用三元组将其转换为一行代码?
<% if tip_off %>
<%= link_to "Dead Man's Snitch", [:homepage], class: "topbar-brand-tip-off", rel: "home" %>
<% else %>
<%= link_to "Dead Man's Snitch", [:homepage], class: "topbar-brand", rel: "home" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我正在做的就是在特定条件下更改类名.
我正在尝试将参数传递到我的 Rails 路径助手中,但我当前的尝试不起作用。这是我现在正在做的事情:
<%= link_to "Pause Assignment", pause_account_complete_assignment_index_path(@assignment.current_timekeeper) %>
Run Code Online (Sandbox Code Playgroud)
def pause
binding.pry
end
Run Code Online (Sandbox Code Playgroud)
在控制器中,我正在寻找传入的参数。但没有找到它们。这是返回的内容。
<ActionController::Parameters {"controller"=>"accounts/complete_assignment", "action"=>"pause"} permitted: false>
Run Code Online (Sandbox Code Playgroud)
resources :complete_assignment, only: [:create, :destroy] do
get 'pause', on: :collection
end
Run Code Online (Sandbox Code Playgroud)
这可能与我在集合上使用的事实有关?
但是,基本上我如何传递@assigment.current_timkeeper控制器?
我试图将变量的值传递给jQuery选择器,但我似乎无法正确.这是我正在使用的:
var state = $("<%= @state %>").selector;
Run Code Online (Sandbox Code Playgroud)
捕获此值 - > "pending"
我试图将该值传递给此选择器:
$(".snitches-index-header + .tags-column .#{state}_count")
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我正在尝试将字符串传递给jQuery选择器.但这并不像我预期的那样有效.我做错了什么,以便选择器读取:
$(".snitches-index-header + .tags-column .pending_count")
Run Code Online (Sandbox Code Playgroud)
但显然使用变量状态而不是pending?
我来自铁轨背景(像许多Elixir人一样).我目前的问题是我正在尝试查询特定记录.对于我来说,这对我来说毫无疑问,但我似乎无法在凤凰城找到它.这是我正在尝试做的事情:
我有一个Locationhas_many表,MonitorsMonitor有一个不是ID的数字.这些号码只对一个位置是唯一的,所以我不能简单地找到只有监视器编号的特定监视器.所以我必须将它范围扩展到它所属的位置.在Rails中我会做这样的事情:
location = Location.find(params[:location_id])
monitor = location.monitors.find_by(number: params[:monitor_number])
Run Code Online (Sandbox Code Playgroud)
使用Rails活动记录很容易,但我怎样才能与凤凰城一起做?这是我目前的尝试没有按照我的预期运作.
monitor_query = from m in Monitor,
where: m.location_id == ^upload_params["location_id"],
where: m.number == ^upload_params["monitor_number"],
select: m.id
monitor = Repo.all(monitor_query)
Run Code Online (Sandbox Code Playgroud)
这是错误的ID,我不确定它在做什么.任何人都可以告诉我这个吗?
我在名为 的文件中有一个程序project1.rb。在这个文件中,我有一个名为 的方法check_num(n)。我只是想从命令行或 IRB 调用该方法,但我不知道如何调用,并且似乎找不到解释如何调用的文档。
这是我尝试过的:
$ ruby project1.rb check_num(100)
#=> -bash: syntax error near unexpected token `('
Run Code Online (Sandbox Code Playgroud)
有人能帮我解决这个问题吗?
我正在尝试了解Rails开箱即用的委托方法.这就是我想要做的.所以,我有Accounts那么多Tasks.所以我试图让帐户的任务计数,这是我目前正在做的事情:
def total_tasks
tasks.count
end
Run Code Online (Sandbox Code Playgroud)
很标准的东西.但我正在尝试将此方法移动到委托方法.我试过这个,但它不起作用
delegate :count, to: :task, prefix: "total"
Run Code Online (Sandbox Code Playgroud)
这没用,我真的没想到会这样.有没有办法可以做到这一点?
我正在尝试查询属于我的系统中特定用户的所有联赛。
数据设置如下所示:
has_many :users_leagues, Statcasters.UsersLeagues
has_many :leagues, through: [:users_leagues, :league]
Run Code Online (Sandbox Code Playgroud)
所以你可以看到,我有一个 has_many through 关联用户和联赛。
我正在尝试获取用户附加的所有联赛的列表。
在 Rails 中,它看起来像这样:user.leagues它将加载所有附加了当前用户 ID 的联赛。
我如何使用 Ecto、Elixir 和 Phoenix 做到这一点?
我有这个功能:我正在尝试与记录列表进行比较,以查看两者之间是否匹配。
def current_user_has_team?(user, teams) do
user = user |> Repo.preload(:teams)
Enum.member?(user.teams, teams)
end
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为当只有一条记录并且它们匹配时它返回 false。
我怎么说:“看看这个记录列表,这些记录是否与另一个列表匹配?” 在长生不老药?
在 Ruby 中是这样的:
list_1 = [1,2,3]
list_2 = [3,4,5]
(list_1 & list_2).any? => true
Run Code Online (Sandbox Code Playgroud) 我正在尝试将has_many关联预加载到传入的结构和传递的结构关联的has_many关联.
以下是我现在正在使用的内容:
project =
Repo.get!(Project, id)
|> Repo.preload([rows: {query, [images: from i in Image, order_by: i.index]}])
Run Code Online (Sandbox Code Playgroud)
但是这会返回此错误:
This error may happen when you forget a comma in a list or other container:
[a, b c, d]
Elixir cannot compile otherwise. Syntax error before: ','
Run Code Online (Sandbox Code Playgroud)
这虽然工作得很好:
project =
Repo.get!(Project, id)
|> Repo.preload([rows: {query, [:images]}])
Run Code Online (Sandbox Code Playgroud)
但在这个查询中,我无法按照我想要的图像进行排序.任何人都可以帮我吗?
如果给出这个字符串'Cool1, let's g3et to work',我怎么能返回这个值Cool, let's get to work?与Elixir?
到目前为止,我一直试图用Regex来解决这个问题.谢谢!