我想使用simple-form向文本输入字段添加默认值.有了:placeholder
它不作为默认....
<%= f.input :user, :placeholder => 'user@domain.com' %>
Run Code Online (Sandbox Code Playgroud) 有人可以简要地向我解释的方法之间使用的差异uniq
和distinct
?
我已经看到两者都在类似的背景下使用,但差异对我来说并不十分清楚.
我在使用I18n.translate
翻译数组时遇到了麻烦.
具体来说,我有这个阵列,
module TaskEnums
OCTAVE_BANDS = [:hz63, :hz125, :hz250, :hz500, :hz1000, :hz2000, :hz4000, :hz8000, :hz16000]
end
Run Code Online (Sandbox Code Playgroud)
我在YAML文件中有以下翻译.
en:
TaskEnums:
OCTAVE_BANDS:
hz63: "63 Hz"
hz125: "125 Hz"
hz250: "250 Hz"
hz500: "500 Hz"
hz1000: "1000 Hz"
hz2000: "2000 Hz"
hz4000: "4000 Hz"
hz8000: "8000 Hz"
hz16000: "16000 Hz"
Run Code Online (Sandbox Code Playgroud)
在我看来,我想显示一个允许用户选择频率的下拉菜单.
<%= form_for(@task) do |f| %>
<%= f.select :frequency, TaskEnums::OCTAVE_BANDS %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我知道我可以翻译单个符号t :symbol
,但这种方法似乎不适用于数组(例如t TaskEnums::OCTAVE_BANDS
,不做我需要的).
有谁知道我如何翻译OCTAVE_BANDS
数组,以便翻译出现在下拉列表中?这似乎一定是一个常见的问题,所以我假设(并希望!)有一个简单的解决方案......任何人都可以建议如何完成它?
非常感谢,
D.
我想要postfix
在我的ROR项目中发送电子邮件.由于其更安全和更多的功能.
但现在我很失落.我安装postfix
了ROR工作.但接下来该怎么办?
(我只需发送电子邮件,暂不收到)
我应该配置postfix
,让它能够先在评论行发送电子邮件,然后将其集成到ROR中吗?
如果是这样,我应该如何设置配置文件postfix
,以及如何设置rails
?
或者我只是需要做每一个设置rails
?如果是这样,详细设置应该是什么?
我很困惑.许多教程要么不起作用,要么不适合我的情况.
我有一个Bill
嵌套Customer
模型的模型.该Customer
模型有一个电话号码,上面有唯一性验证.在创建帐单时,我想根据电话号码获取现有记录,或者如果不存在则创建新记录.我应该怎样做RESTful
?
最近我遇到了一些正在使用的应用程序,js.erb
我不确定如何使用它...这是下面的代码.有人可以帮我理解这是如何工作的吗?
在routes.rb
文件中
map.resources :player_emails
Run Code Online (Sandbox Code Playgroud)
我的控制器player_emails_controller.rb
在创建动作中
def create
@player_email = PlayerEmail.create(params[:player_email])
if @player_email.save
@response_txt = "The player has been emailed."
PlayerEmailsMailer.deliver_pattern_email(@something, @player_email, request.host_with_port)
@error = false
else
@error = true
@response_txt = "Please make sure you entered your name and a valid email address."
end
end
Run Code Online (Sandbox Code Playgroud)
然后我有文件 player_emails/create.js.erb
$('#player_email_ind').hide();
$('#player_email_submit').show();
$('#player_response_msg').html("<%= escape_javascript @response_txt %>").fadeIn();
<% unless @error %>
$('#player_email_form')[0].reset();
<% end %>
Run Code Online (Sandbox Code Playgroud)
我知道jquery会发生什么,但我不知道这是怎么做的ajax
.它是否只是ajax
在有js.erb
... 时自动进行调用...有人可以解释它的工作方式以及为什么我不需要在控制器操作中的respond_to告诉它这是format.js
我想创建所有公司活动的视觉时间表.时间轴的HTML是使用a构建的loop
.
为简单起见,我们假设两个模型Hire
&Deal
.两个模型都具有date
属性和一些模型特定属性.如何将ActiveRecord
两个模型的结果,然后order
合并的哈希值合并date
为一个我可以循环的哈希?
您好,我是 Rails 的初学者,并建立了具有各种关联的数据库/模型。
我希望我的控制器将记录和相应的记录transactions
都保存到数据库(即事务中的每个子事务(例如产品)一行)。transactions
subtransactions
创建新表subtransactions
(与 关联transactions
)后,出现以下异常:
TransactionsController#create 中的参数错误
You tried to define an association named transaction on the model Subtransaction,
but this will conflict with a method transaction already defined
by Active Record. Please choose a different association name.
Run Code Online (Sandbox Code Playgroud)
我对这告诉我的内容有点困惑,或者更具体地说,在哪里寻找错误。不知道如何找出我的协会与哪种方法相冲突。
我有三个模型, companies
,transactions
和subtransactions
。每个都有很多下一个。我需要构建一个保存transactions
到subtransactions
.
我正在努力寻找表单的最佳方法以及保存到数据库的适当方法。理想情况下,如果所有记录都通过验证,则立即保存记录。
我的简化形式:
<%= form_for(@transaction) do |f| %>
<div class="field" id="transaction_amount">
<%= f.label :total %><br>
<%= f.text_field :total %>
</div>
<% 1.upto(5) do |i| %>
<%= fields_for("subtransaction[#{i}]") do |s| %>
<div class="field" id="subtotal_amount">
<%= s.label :subtotal, "Subtotal #{i}" %><br>
<%= s.text_field :subtotal %>
</div>
<% end %>
<% end %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我的交易控制器:
def new
@transaction = company.transactions.build if logged_in?
end
def create
@transaction = company.transactions.build(transaction_params)
params[:subtransaction].each …
Run Code Online (Sandbox Code Playgroud) 我有一个 ActiveRecord 查询:
Shareholder.where(is_company: false).distinct
Run Code Online (Sandbox Code Playgroud)
这给了我错误:
ActiveRecord::StatementInvalid: PG::UndefinedFunction: ERROR: could not identify an equality operator for type json
Run Code Online (Sandbox Code Playgroud)
ActiveRecord 创建的 SQL 查询:
SELECT DISTINCT "shareholders".* FROM "shareholders" WHERE "shareholders"."deleted" = $1 AND "shareholders"."is_company" = $2
我有点困惑这行不通。怎么了?
我是铁杆新手,最近一直想知道以下内容:"
十六进制值(例如0x98438b8
)在例外中表示的是什么
undefined local variable or method "company_id" for #<Task:0x98438b8>
这对调试有什么用?
ruby-on-rails ×11
activerecord ×4
ruby ×3
associations ×2
asp.net-ajax ×1
distinct ×1
email ×1
erb ×1
exception ×1
fields-for ×1
forms ×1
javascript ×1
parameters ×1
postfix-mta ×1
rest ×1
simple-form ×1
sorting ×1