我已经阅读了RSpec手册中关于差异的内容,但有些事情仍然令人困惑.其他所有来源,包括"RSpec Book"仅解释"let",而"The Rails 3 Way"与手册一样令人困惑.
我理解"let"仅在调用时进行评估,并在范围内保持相同的值.所以有意义的是,在手册的第一个例子中,第一个测试通过,因为"let"只调用一次,第二个测试通过,因为它增加了第一个测试的值(在第一个测试中评估了一次)并具有1)的值.
之后,因为"让!" 在定义时进行评估,并在被调用时再次进行,如果测试没有失败,因为"count.should eq(1)"应该是"count.should eq(2)"?
任何帮助,将不胜感激.
选择要上传的文件后,我希望无需单击按钮即可将文件上载到数据库.这是如何使用jQuery完成的?
我想选择一个这样的文件:http: //i.stack.imgur.com/0408T.gif
<input type="file" valign="baseline" />
Run Code Online (Sandbox Code Playgroud) 我的问题已在这里提出,但我试图了解其背后的原因,而不是如何解决它.
我得到的错误是;
You have already activated rspec-core 2.7.1, but your Gemfile requires rspec-core 2.6.4. Using bundle exec may solve this. (Gem::LoadError)
Run Code Online (Sandbox Code Playgroud)
现在我已经获得了各种解决方案,比如使用"mpapis-bundler",或创建"捆绑exec"的简写,但我的印象是那是什么
$bundle install --binstubs
Run Code Online (Sandbox Code Playgroud)
是为了.
更具体地说,由于我的gemfile中没有为rspec-rails声明的版本号,为什么我有这种不兼容性?我尝试时也发生了错误
$rake db:migrate
Run Code Online (Sandbox Code Playgroud)
告诉我
You have already activated rake 0.9.2.2, but your Gemfile requires rake 0.9.2. Consider using bundle exec.
Run Code Online (Sandbox Code Playgroud)
任何解释将不胜感激.
编辑:
我的应用程序的所有宝石都在宝石集中,我已经更新了我的宝石.更新是否应确保相关的宝石兼容?
我正在忙着创建一个系统,我需要跟踪系统中的每个变化.换句话说,当数据库中的列发生更改时,我需要知道哪个表,哪个列,何时进行更改,哪个用户,从哪个值到什么值.
我的第一个想法是为每个表创建第二个表以进行日志记录,包含column_name,updated_by,updated_on,from_value,to_value等字段(为简单起见,将from_value和to_value字段保留为字符串).但是,这实际上将创建数据库的副本.
我的第二个选择是为所有表创建一个类似类型的大型表(table_name,column_name,updated_by,updated_on,from_value,to_value),但这将导致一个无法管理的表,因为更改将经常发生.
这两个选项都有同样的问题,我不确定如何引用表的列,最糟糕的是,如何在应用程序的生命周期中处理列名的更改.
任何想法和建议将不胜感激.
在我的Ruby on Rails应用程序中,我使用的是jQuery UI 1.9.2(直通jquery-ui-rails).我在Modal对话框表单中有一个Autocomplete字段,它使用Ajax和Json填充它的下拉列表建议框.它工作正常,向我显示正确的建议.
我随后升级到jQuery UI 1.10.3(使用bundle update),现在自动完成下拉列表建议框不再有效.它在JavaScript控制台中没有显示错误.实际上它表明返回的Json是正确的.
我已经尝试重写JS中的自动完成功能来手动执行调用(使用自动完成的source: $.ajax {}调用,但仍然没有.
有人向我建议问题可能是jQuery改变了导致jquery-ui-railsgem停止工作的东西,但在向他们提交bug票后,事实证明这不是问题.
任何帮助,将不胜感激.
回答注意:
mhu的答案是正确的,你应该尽可能避免篡改z索引(这就是为什么我把它标记为正确).但是在我的情况下(自动填充文本框位于模态对话框中),下拉列表将仅显示在对话框的宽度内(如果文本宽于此值,则隐藏它并且您无法使用滚动条).因为我不想那样,我做了我在下面的答案中所描述的并且它有效.我确实对自己做了各种评论和注释,以确保它在任何jQueryUI更新后仍然有效.
jquery jquery-ui autocomplete jquery-ui-autocomplete ruby-on-rails-3.2
我正在为2个独立客户开发2个应用程序,为自己开发第3个应用程序.所有3个应用程序都将具有通讯录,电子邮件和用户身份验证.最后,我希望将应用程序创建为"模块化",以便我可以根据需要添加(或删除)模块.
我看过Mountable Engines Railscast,它看起来像我需要的,但我仍然不清楚以下内容:
我猜你首先开发用户身份验证,并将其包含在引擎模块的虚拟应用程序中,但我对引擎的命名空间感到困惑.
注意我来自C#背景并且我是Web开发的新手可能是有用的.
有人可以解释为什么工厂比测试期间的简单实例更有用吗?更清楚的是,我没有看到以下区别:
before(:each) do
@attr = {
:name => "Example User",
:email => "user@example.com",
:password => "foobar",
:password_confirmation => "foobar"
}
end
it "should create a new instance given valid attributes" do
User.create!(@attr)
end
Run Code Online (Sandbox Code Playgroud)
还有这个
before(:each) do
@user = Factory(:user)
end
Run Code Online (Sandbox Code Playgroud)
其中有以下工厂:
Factory.define :user do |user|
user.name "Michael Hartl"
user.email "mhartl@example.com"
user.password "foobar"
user.password_confirmation "foobar"
end
Run Code Online (Sandbox Code Playgroud) 我的 Rails 3.2 应用程序中有一个电子邮件客户端,用于将电子邮件存储在数据库中。电子邮件的内容使用tinyMCE保存,附件使用Paperclip保存。这些电子邮件是使用我创建的邮件程序发送的,如下所示:
class MessageMailer < ActionMailer::Base
def messaging_message(msg)
begin
Message.transaction do
@msg = msg
msg.attached_files.each do |attached_file|
attachments[attached_file.file_file_name] = File.read("#{Rails.root.to_s}/public/attachments/messaging/messages/#{msg.id}/#{attached_file.id}/#{attached_file.file_file_name}")
end
mail_msg = mail(
to: Message.convert_to_mail_addresses(msg.to_recipients), # This converts the list of Recipient objects into "emai@address.com; email2@address.com" format
cc: Message.convert_to_mail_addresses(msg.cc_recipients),
bcc: Message.convert_to_mail_addresses(msg.bcc_recipients),
from: msg.access_department.email,
subject: msg.subject,
body: msg.body,
content_type: "text/html"
)
# Sets the user_name, password and domain based on the FROM address the user selected in the app
mail_msg.delivery_method.settings.merge!(msg.access_department.mail_settings)
end
rescue Exception => …Run Code Online (Sandbox Code Playgroud) email ruby-on-rails actionmailer email-attachments ruby-on-rails-3.2
jquery ×2
rspec ×2
actionmailer ×1
autocomplete ×1
bundler ×1
email ×1
factory ×1
gemfile ×1
javascript ×1
jquery-ui ×1
rspec2 ×1
ruby ×1