使用Scrum,有用户故事的原理和这些干预任务等等迭代到成品 - 这很好.
但是,假设我有100个需要实现的功能,在现实世界中我不能将任何开发人员放在这些上,直到完成许多正常的辅助工作 - 例如,做一个UI设计(当然你需要有)这个功能的整体概念?),或构建不一定表现为功能的底层东西.
那么,这会发生在哪里?
假设我有一个Rails应用程序,它可以从gem中获取大部分功能(例如,CMS).
如果我现在需要添加一些自定义(例如,向用户添加属性),这样做的最佳实践方法是什么?如果我自定义gem,那么我将来会有更新gem的问题.
在这里采取的最佳方法是什么?
我们有以下路线设置:
MyApp::Application.routes.draw do
scope "/:locale" do
...other routes
root :to => 'home#index'
end
root :to => 'application#detect_language'
end
Run Code Online (Sandbox Code Playgroud)
这给了我们这个:
root /:locale(.:format) home#index
root / application#detect_language
Run Code Online (Sandbox Code Playgroud)
这很好.
但是,当我们想要使用语言环境生成路由时,我们遇到了麻烦:
root_path生成/哪个是正确的.
root_path(:locale => :en)产生/?locale=en哪些是不受欢迎的 - 我们想要/en
所以,问题是,这是可能的,怎么样?
我正在为我的网站使用Middleman Blog gem,但默认情况下,/source当看到vim中的树并尝试找到其中一个其他文件时,看起来需要找到博客文章并不是特别好看(例如一个模板).
通过查看文档,我无法看到是否有任何方式移动博客文章,以便将它们存储在其他位置,例如blog_articles文件夹或类似文件.
这可能吗?
我有一个上传解决方案,使用与此类似的设置,人们可以将文件拖到页面上并将其上传到S3.
但是,我遇到了XHR/Iframe上传的问题.基本上,如果我遗漏了forceIframeTransport文件将成功上传到S3,但整个页面最终都在S3上,因为这是表单提交的地方.
当我包含forceIframeTransport设置时true,没有任何反应.控制台中没有例外,服务器上没有任何事情发生.
我已经包括jquery.iframe-transport,jquery.ui.widget并且jquery.fileupload在页面,按照这个顺序.
我们现在已经在一些项目上使用Scrum并取得了不同的成功,现在我有一个与文档相关的查询.
在Scrum中,您显然有产品积压("应用程序首先打开用户正在使用的最后一个文档.")和sprint任务积压("实现忘记密码屏幕").然而,在我看到的所有例子中,这两个项目在细节方面都是相当高的水平(根据便利贴设计).
那么,细节在哪里?假设客户对库存管理屏幕有一些非常具体的要求,或者有一个复杂的API需要在后端集成,在哪里记录,如何以及谁捕获这些信息?它是否与积压分开,但是在准时制或其他方面填充?
考虑以下代码将在AR查找中抛出:
conditions = []
conditions[:age] = params[:age] if params[:age].present?
conditions[:gender] = params[:gender] if params[:gender].present?
Run Code Online (Sandbox Code Playgroud)
我需要在'profile'属性上添加另一个条件,即LIKE条件.我怎么能这样做,显然LIKE通常是通过数组完成的,而不是哈希键.
我有一个应用程序在路由文件中具有以下内容:
namespace "admin" do
# ADMINISTRATIVE ROUTES ONLY
root :to => 'home#index'
resources :comments do
member do
get :approve
get :reject
end
end
resources :users do
member do
get :block
get :unblock
end
end
end
Run Code Online (Sandbox Code Playgroud)
在本地浏览/ admin时,我会收到相应页面的欢迎.在heroku版本的相同URL上,我得到404.该路线在'heroku rake routes'中正确显示
日志显示:
ActionController::RoutingError (wrong constant name Admin/
homeController):
/disk1/home/slugs/196384_c95a9e3_4463/mnt/.bundle/gems/gems/
activesupport-3.0.0.beta4/lib/active_support/inflector/methods.rb:
103:in `const_defined?'
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我有两个水豚测试,第一个测试用户,第二个用于测试仅供登录用户使用的功能.
但是,我无法让第二个测试工作,因为会话不是跨测试维护的(显然,它应该是).
require 'integration_test_helper'
class SignupTest < ActionController::IntegrationTest
test 'sign up' do
visit '/'
click_link 'Sign Up!'
fill_in 'Email', :with => 'bob@wagonlabs.com'
click_button 'Sign up'
assert page.has_content?("Password can't be blank")
fill_in 'Email', :with => 'bob@wagonlabs.com'
fill_in 'Password', :with => 'password'
fill_in 'Password confirmation', :with => 'password'
click_button 'Sign up'
assert page.has_content?("You have signed up successfully.")
end
test 'create a product' do
visit '/admin'
save_and_open_page
end
end
Run Code Online (Sandbox Code Playgroud)
save_and_open_page调用生成的页面是全局登录屏幕,而不是我期望的管理主页(注册登录).我在这做错了什么?
我正在编写一些代码,我们在ElasticSearch索引中插入200,000个项目.
虽然这很好,但是当我们在索引中获得一些项目以确定所有内容都进入时,我们没有得到相同的数字.但是,如果我们等一两秒,计数是正确的.
因此,有没有一种编程方式我们可以从ElasticSearch获得真正的计数而不必sleep或类似?