基于此查询:
@cars = Car.where("manufacturer_id IN ?", @mfts.select("id")).limit(30).select("id")
Run Code Online (Sandbox Code Playgroud)
如何在视图中显示汽车的ID(或者我是否需要重写查询)?
3,2,5,12,15,24,34,63,64,65,66,85
非常感谢 - 我已经找到了这个,但找不到合适的问题/答案.
一种解决方案是:
#view
<% @cars.each do |c| %><%= c.id %>,<% end %>
Run Code Online (Sandbox Code Playgroud)
我不知道是否有更好的方法去做 - 这显然在列表的末尾留下了一个流浪逗号(这不是一个破坏者).更优雅的解决方案?
我的(很久,我道歉)问题是后续:如何在Rails中将自动完成标记添加到现有模型中?
我正在使用acts-as-taggable-on和rails3-jquery-autocomplete尝试建立一个系统(很像Stack Overflow),用户开始输入标签,并在下拉框中显示建议.
我在#new表单的答案中,我希望看到与问题相关的标签列表.即想象一下正在寻找新的Rails问题来回答和搜索ra.Ruby-on-Rails弹出,点击它,你会看到RoR下的问题列表,你可以回答其中任何一个问题.
这些是我采取的步骤.
<%= javascript_include_tag "ui/jquery.ui.position", "ui/jquery.ui.autocomplete", "autocomplete-rails.js", "rails.js", "application.js" %>.(我已经拥有Jquery,UI Core和UI Effects.)autocomplete :question, :tags, :full => true.我也试过了autocomplete :tag, :name, :full => true.acts_as_taggable_on :tags.<%= form_tag new_answer_url, :method => "get" do %>
<%= autocomplete_field_tag "tag_list", 'tags', autocomplete_question_tags_answers_path %>
<% end %>一个简单的自动完成(没有标记)可以工作(但每页加载只能工作一次).有了标记,没有成功.
经过大量的实验(以及许多小时),我遇到了这些问题:
NameError (unitialized constant Tag)服务器响应初始条目.jquery-ui autocomplete ruby-on-rails acts-as-taggable-on ruby-on-rails-3
我有一个系统,用户可以在其中上传任何东西 - 这些文件可供其他用户使用。
我需要列出不同行业的专业人员真正需要的文件类型列表,这些文件类型不会受到黑客攻击/病毒等的侵害。
.doc .docx .gif .jpg .jpeg .mpg .mpeg .mp3 .odt .odp .ods .pdf .ppt .pptx .tif .tiff .txt .xls .xlsx .wav
您还知道哪些既有用又安全的其他文件类型?
许多评论和回复都要求对“免受黑客攻击/病毒攻击”提供更清晰的定义——我问这个问题的详细程度正是因为我对文件类型及其风险的理解不如许多人那么深入你这样做,我想1)任何文件类型2的指导,可能让我的网站更安全,)如果是没有“安全”的文件类型,然后就如何一个系统,允许灵活的上传前进的任何建议和文件共享。
如果确实可以将任何恶意文件打包为看似安全的文件,我该如何保护我的用户?
我有一个使用Amazon S3存储Paperclip附件的Rails应用程序.我的database.yml文件为开发,测试和生产指定了不同的S3存储桶.
我在Heroku上有两个应用程序 - 一个生产应用程序和一个"临时应用程序",用于在平台预启动时测试代码.
当前的系统有一个重要的缺陷 - 它使用相同的S3桶进行分段和生产.我如何设置我的系统,以便它使用不同的桶,具体取决于我是否写git push production master或git push staging master?
HTML:
<div class="parent">
<input></input>
<button></button>
</div>
<div class="siblings">
<p class="children"></p>
</div>
Run Code Online (Sandbox Code Playgroud)
jQuery的:
$('button').click(function(){
if($(this).siblings('input') != ""){
var addTo = $(this).siblings('input').val();
$(this).parent('parent').siblings('siblings').children('children').html(addTo);
}
});
Run Code Online (Sandbox Code Playgroud)
为什么不起作用?我想从输入中获取值,并替换内容p.
以下是setup_mail.rb中Google Apps的smtp设置.
:address => "smtp.gmail.com",
:port => 587,
:domain => 'mysite.co',
:user_name => 'noreply@mysite.co',
:password => 'password',
:authentication => 'plain',
:enable_starttls_auto => true
Run Code Online (Sandbox Code Playgroud)
我的开发日志详细显示了生成的电子邮件并发送到正确的电子邮件地址......但它们没有到达.我只能认为上面的设置一定有问题.你能看出问题所在吗?
一旦解决了这个问题,我有什么问题可以让它在Heroku上运行吗?
注意:以上是记录弃用警告:
DEPRECATION WARNING: Giving a hash to body is deprecated, please use instance va
riables instead. (called from process at C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gem
s/actionmailer-3.0.0/lib/action_mailer/old_api.rb:77)
Run Code Online (Sandbox Code Playgroud) 我一直遇到MySQL服务器安装问题,在停电后搞砸了.
Intel i5 Mac运行OS X 10.6.5
Ruby 1.9.2安装
Rails 3.0.1安装
MySQL Server(最后)安装并运行
我完全重新安装了MySQL,后者删除了本地开发/测试/生产数据库.所以,我已经create database development;在MySQL中运行以使dev数据库为迁移做好准备.
rake db:migrate以重新获取我的数据库.(我目前无法从Rails访问我的数据库或Mysql.)使用gem 'mysql', '2.8.1'并运行rake db:migrate,我收到错误:
rake aborted!
undefined method 'init' for Mysql:Class
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/mysql_adapter.rb:30:in 'mysql_connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:230:in 'new_connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:238:in 'checkout_new_connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:194:in 'block (2 levels) in checkout'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:190:in 'loop'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:190:in 'block in checkout'
/Users/sscirrus/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/monitor.rb:201:in 'mon_synchronize'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:189:in 'checkout'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:96:in 'connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:318:in 'retrieve_connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_specification.rb:97:in 'retrieve_connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/connection_adapters/abstract/connection_specification.rb:89:in 'connection'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/migration.rb:486:in 'initialize'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/migration.rb:433:in 'new'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/migration.rb:433:in 'up'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/migration.rb:415:in 'migrate'
/Users/sscirrus/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.1/lib/active_record/railties/databases.rake:142:in 'block (2 …Run Code Online (Sandbox Code Playgroud) 当我在Heroku上找到Appoxy SimpleWorker时,我正准备开始使用delayed_job并在我的应用程序上运行.
Appoxy表示它大规模并行,并且可以上下调整工作人员以最大限度地降低成本.但是,在我看来,使用HireFire,delayed_job也是如此.这是我的问题:你会选择哪个:delayed_job + HireFire或SimpleWorker?(为什么?)
https://github.com/tobi/delayed_job
http://hirefireapp.com/
http://addons.heroku.com/simple_worker
我的应用程序目前很小 - 音量很低,应用程序的数量不应该非常高.
还有什么人可以期望直接从这两项服务的创始人那里得到回复?谢谢Michael和Travis!
我有一个很大的能力文件,可以通过搜索"角色"表来确定用户可以做些什么.每个角色对应于特定用户可以执行的操作,例如,能够添加项目或能够编辑主公司记录.
目前,每个运行的控制器操作load_and_authorize_resource都会经过> 30个语句,如:
ability.rb (>30 times)
Role.where("user_id = ? AND role = ? AND roleable_type = ? AND roleable_id IS NULL", user.id, "delete", "task").last.present? ? (can :destroy, Task) : nil
Run Code Online (Sandbox Code Playgroud)
这是一个非常低效的解决方案,因为服务器在执行任何操作之前运行> 30个查询.
执行此操作的最佳方法是仅根据控制器和视图所需的内容运行需要运行的查询.有没有办法做到这一点?
我正在设计一个具有特殊功能的USB键盘.这样的HID设备可以从主机接收哪些信息?
我可以通过USB:
谢谢!
heroku ×2
actionmailer ×1
activerecord ×1
amazon-s3 ×1
autocomplete ×1
cancan ×1
delayed-job ×1
file-type ×1
hid ×1
hirefire ×1
jquery ×1
jquery-ui ×1
keyboard ×1
macos ×1
mysql ×1
security ×1
smtp ×1
whitelist ×1