我有一个分支(让我们称之为B)忽略某个文件,在某些其他分支(例如分支A)中不会忽略该文件.当我从分支B切换到分支A,然后再次返回到B时,该文件已被删除.
这是正常的吗?我可以看到它会如何发生,在分支B认为它不存在的意义上,分支A认为它是,所以当我回到B时它"整理它".但它有点烦人.
有什么建议?
我有一些javascript捕获表单的更改然后调用表单的常规提交功能.表单是一个GET表单(用于搜索),我在params中有很多空属性.我想做的是在提交之前删除任何空属性,以获得更清晰的URL:例如,如果有人更改'主题'选择'英语'我想要他们的搜索网址是
http://localhost:3000/quizzes?subject=English
Run Code Online (Sandbox Code Playgroud)
而不是
http://localhost:3000/quizzes?term=&subject=English&topic=&age_group_id=&difficulty_id=&made_by=&order=&style=
Run Code Online (Sandbox Code Playgroud)
就像现在一样.这纯粹是为了有一个更清晰,更有意义的网址链接到人们的书签等等.所以,我需要的是这些内容,但这是不对的,因为我不是在编辑实际的表格但是一个由表格的参数制作的js对象:
quizSearchForm = jQuery("#searchForm");
formParams = quizSearchForm.serializeArray();
//remove any empty fields from the form params before submitting, for a cleaner url
//this won't work as we're not changing the form, just an object made from it.
for (i in formParams) {
if (formParams[i] === null || formParams[i] === "") {
delete formParams[i];
}
}
//submit the form
Run Code Online (Sandbox Code Playgroud)
我觉得我很接近这个,但我错过了如何编辑实际表单的属性而不是创建另一个对象并编辑它的步骤.
感谢任何建议 - 最多
编辑 - 解决 - 感谢许多发布此事的人.这就是我所拥有的,这似乎完美无缺.
function submitSearchForm(){
quizSearchForm = jQuery("#searchForm");
//disable empty fields so they …
Run Code Online (Sandbox Code Playgroud) 当我在服务器上查看我的heroku日志(带heroku logs --tail --app myapp
)时,我看到如下所示:
2011-06-21T14:09:25+00:00 app[web.1]: Started PUT "/reports/19.xml" for 77.89.149.137 at 2011-06-21 07:09:25 -0700
2011-06-21T14:09:25+00:00 heroku[router]: PUT myapp.heroku.com/reports/19.xml dyno=web.1 queue=0 wait=0ms service=7ms status=401 bytes=28
2011-06-21T14:09:26+00:00 heroku[nginx]: PUT /reports/19.xml HTTP/1.1 | 77.89.149.137 | 656 | http | 401
Run Code Online (Sandbox Code Playgroud)
在我的本地日志中,我会看到这样的事情:
Started PUT "/reports/19" for 127.0.0.1 at 2011-06-21 15:27:01 +0100
Processing by ReportsController#update as XML
Parameters: {"report"=>{"workflow_status"=>"3"}, "id"=>"19"}
Person Load (0.9ms) SELECT "people".* FROM "people" WHERE "people"."email" = 'madeupemai@lkklj.com' LIMIT 1
Report Load (0.4ms) SELECT "reports".* FROM "reports" WHERE …
Run Code Online (Sandbox Code Playgroud) 我正在为Order对象创建一个表单,并且该订单包含许多Products,通过名为OrderProducts的连接表.所以,我们有这样的事情:
<% @order = Order.new %>
<% form_for @order do |f| %>
<% @products.each do |product| %>
... want to iterate over products here to build up "order[product_ids][]", with one checkbox per product
<% end %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
通常对于每个产品我会有一个check_box_tag,说
<%= check_box_tag "order[product_ids][]", product.id, @order.product_ids.include?(product.id) %>
Run Code Online (Sandbox Code Playgroud)
但是,这一点,虽然工作正常,总觉得有点像警察.我有办法用f.check_box
语法吗?重要提示 - 关于有问题的项目我在Rails 2.2.2中工作,因此在rails 2中工作的解决方案将是理想的.
假设我有一个具有类似值的列
foo/bar
chunky/bacon/flavor
/baz/quz/qux/bax
Run Code Online (Sandbox Code Playgroud)
即,由"/"分隔的可变数量的字符串.
在另一列中,我希望从"/"中分割后,从每个字符串中获取最后一个元素.所以,该专栏将有
bar
flavor
bax
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚这一点.我可以拆分"/"并得到一个数组,我可以看到函数"index"从数组中获取一个特定的编号索引元素,但是找不到在这个函数中说"最后一个元素"的方法.
当用户注册我的某个网站进行免费试用时,我将其帐户到期时间设置为"14.days.from_now".然后在主页上我显示他们剩下多少天,我得到:
(user.trial_expires - Time.now)/86400
Run Code Online (Sandbox Code Playgroud)
(因为一天有86400秒,即60*60*24)
有趣的是,它出现超过14,所以得到四舍五入到15.在控制台进行更仔细的调查,这将在未来发生两天(如果你知道我的意思).例如
>> Time.now
=> Fri Oct 29 11:09:26 0100 2010
>> future_1_day = 1.day.from_now
=> Sat, 30 Oct 2010 11:09:27 BST 01:00
#ten past eleven tomorrow
>> (future_1_day - Time.now)/86400
=> 0.999782301526931
#less than 1, what you'd expect right?
>> future_2_day = 2.day.from_now
=> Sun, 31 Oct 2010 11:09:52 GMT 00:00
>> (future_2_day - Time.now)/86400
=> 2.04162248861183
#greater than 2 - why?
Run Code Online (Sandbox Code Playgroud)
我想也许这与时区有关 - 我注意到从现在起1天的时间是在BST,从现在起2天的时间是在GMT.所以,我尝试使用localtime并得到了相同的结果!
>> future_2_day = 2.day.from_now.localtime
=> Sun Oct 31 11:11:24 0000 …
Run Code Online (Sandbox Code Playgroud) 有没有人知道任何Linux软件减少mp3文件的大小,同时对质量影响最小?
我只是使用pngcrush对我们的资产库中的所有png执行此操作并获得了良好的结果,并且希望能够对我们的mp3执行相同的操作.即使文件大小减少10%对我来说也是一个不错的胜利.
有什么建议?它需要是我可以从shell脚本调用的东西.
干杯,最大
使用rails 2.我想要一个指向当前页面的链接(无论它是什么)使所有参数保持相同但将格式更改为'csv'.(设置格式可以通过在参数中使用format = csv或在路径的末尾放置.csv来完成).例如
posts/1
=> posts/1.csv OR posts/1?format=csv
posts?name=jim
=> posts.csv?name=jim OR posts?name=jim&format=csv
Run Code Online (Sandbox Code Playgroud)
我试着用这个hacky尝试
request.url+"&format=csv"
如果当前网址中存在参数(上面的情况2),则可以正常工作,但如果没有(案例1)则会中断.我可以在这些方面提出更多的hacky内容,例如测试请求是否有params,但我认为必须有一个更好的方法.
干杯,最大
编辑 - 顺便说一句,它不保证当前页面可以有一个与之关联的命名路由,如果相关:我们可以通过通用的"/:controller /:action /:id"路由到达那里.
可能与如何使用Window.open在Chrome中打开mailto链接而不创建新标签有关?
大家好.我有一个表单页面,我放了一个window.onbeforeunload确认,以阻止人们导航并意外丢失他们的更改:
window.onbeforeunload = function(){
if(changed)
return "You have unsaved changes. Do you really want to leave this page without saving?";
};
Run Code Online (Sandbox Code Playgroud)
其中changed
是变量i设置为true,每当用户进行任何更改.那一切都很好.但是,我还添加了一些指向页面的mailto链接,如下所示:
<a class="button button-alt" href="mailto:foo@foo.com">Report a problem</a>
Run Code Online (Sandbox Code Playgroud)
即使mailto没有离开页面(它正在打开用户默认邮件应用程序),它仍然会触发onbeforeunload事件,提示确认框,这很烦人.我可以target="_blank"
在链接上设置它,但随后用户将坐在空白标签中.
我可以将mailto链接设置为不触发onbeforeunload事件吗?我想到了一个可怕的hacky方式,通过使用另一个临时的javascript变量,导致onbeforeunload确认不触发,但它似乎有点脏.无论如何,当我等待回复时,我会做到这一点,但有没有人有更好的解决方案?
谢谢,最大
假设我在主人的分支中,称为"my_new_stuff".我有一种感觉,我可能会藏在那里的东西.我很担心,如果我这样做git stash pop
而且我没有藏匿任何东西,它会把一堆不必要的垃圾塞进我的工作文件夹.
我可以看看是否有没有破坏他们的藏匿变化?
谢谢,最大