我在开发数据库中本地存储了一组初始生产数据,我希望将其迁移到生产环境以获取数据起点.传输此数据的最佳方法是什么?
如果有一种方法可以pgbackups按照说明使用,这似乎并不明显.也许我必须在本地运行某种类型的手动备份,然后用它来推送它.pgbackups如果是这种情况,我会很感激一些关于完成此操作的具体说明.
我的网站有一些内容需要由撰稿人定期更新.我想使用像CushyCMS之类的东西或以某种方式包含机车或BrowserCMS的可编辑功能,但它已经是一个应用程序,我不能完全重组页面和内容适当的完整打击CMS现在.
同样,我只是想制作大约3页可编辑,这样有人就可以弹出,更改或调整一两段内联然后完成.
有哪些选项可以为Rails完成这样的事情? 目前的观点是HAML.
javascript ruby ruby-on-rails content-management-system ruby-on-rails-3
我在视图中有一些link_to在HAML中.一个例子如下:
= link_to "http://somedomain/submit?phase=2&url=#{request.fullpath}&title=#{page_title}", :target =>"_blank" do
Run Code Online (Sandbox Code Playgroud)
事实证明,每当我尝试各种逃避时,我仍然会从http://validator.w3.org获得"使用%20代替空格"错误.
在这种情况下,转义变量的正确方法是什么?
我有一些我在Rails 3.1.x应用程序之外编写的其他脚本,但现在是时候直接从Rails应用程序的数据库中提取数据而不是利用一些数据导出.
为此,我想将脚本集成到我的rails应用程序中.到目前为止,我已经根据模型中的方法运行了rake任务,例如在我的lib/taks/app.rake:
desc "Does something."
task :do_some_things => :environment do
ModelName.some_method
ModelName.another_method
end
Run Code Online (Sandbox Code Playgroud)
如果我将脚本基本上放到lib中,我是否可以从rake任务中调用它们?或者我需要模型中的调用方法require lib/my_script.rb吗?
我试图写一个这样的任务:
task :run_me => :environment do
`bundle exec lib/script.rb`
end
Run Code Online (Sandbox Code Playgroud)
然后,当这执行并且我有一个require脚本.rb(require 'lib/another_script.rb')我最终得到"无法加载此类文件"错误.
我现在显然是以错误的方式接近这个.
好像我应该在rake任务中简单地进行一个方法调用,然后调用/ lib或其他地方的支持脚本(在哪里最合适).
我想只允许在production应用程序的其他环境中进行某些验证.
例如,我试图添加:
if Rails.env.production?
validates :email, :uniqueness => true
validates :phone, :uniqueness => true
end
Run Code Online (Sandbox Code Playgroud)
但是这不起作用. 如何仅将验证添加到特定环境模式?
我想对网站上的背景进行响应式图像排列.
例如,基于不同的屏幕分辨率,我希望加载不同的背景图像.如果我可以定义不同的行为,那将是有用的; 例如,较高分辨率的桌面将具有较大的拉伸背景图像,而上网本可能具有较小版本的缩小以适应,或者3GS iPhone将具有较小的平铺图像.
你会如何实现这样的场景?
我需要在一组页面上提取数据表.我已经可以遍历页面了.
如何提取表格的数据?我正在使用Ruby和Nokogiri,但我认为这是一个相当普遍的问题.
我在下图中的每一行中加下了所需的数据点.
html的一个示例是:http://pastebin.com/YYFPbFLC
我如何通过Nokogiri将这个表解析为有意义的块?
表的xpath是:
/html/body/table/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[2]/table/tbody/tr/td/table/tbody/tr/td[2]/table
Run Code Online (Sandbox Code Playgroud)
该表具有可变数量的数据行和格式化行.我只想收集包含有意义数据的行,但是我不容易看到通过XPath区分它的方法,除了第二列可靠地有" keyword".这些行中的每一行都具有以下XPath:
1st meaningful row is: /html/body/table/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[2]/table/tbody/tr/td/table/tbody/tr/td[2]/table/tbody/tr[2]
...
Last meaningful row: /html/body/table/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[2]/table/tbody/tr/td/table/tbody/tr/td[2]/table/tbody/tr[N]
Run Code Online (Sandbox Code Playgroud)
需要匹配"关键字"上的文本内容的第一个有意义的列是:
/html/body/table/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[2]/table/tbody/tr/td/table/tbody/tr/td[2]/table/tbody/tr[2]/td[2]
Run Code Online (Sandbox Code Playgroud)
第一行数据的最后一列是:
/html/body/table/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[2]/table/tbody/tr/td/table/tbody/tr/td[2]/table/tbody/tr[2]/td[6]
Run Code Online (Sandbox Code Playgroud)
每行都是一条记录,并且该列td的时间戳是时间戳中的时间; 年,月和日都在各自的变量中,可以附加一个完整的时间戳:
/html/body/table/tbody/tr/td[2]/table/tbody/tr[2]/td/table/tbody/tr/td[2]/table/tbody/tr/td/table/tbody/tr/td[2]/table/tbody/tr[2]/td[5]
Run Code Online (Sandbox Code Playgroud) wget在很长一段时间内,我收集了大量的页面,因此我需要分析这些集合,以便:
1) extract all URLs,
2) format them in a unified fashion,
3) count occurrences of URLs (both base domain and with full path; two separate outputs), and
4) sort output from highest occurring to lowest
Run Code Online (Sandbox Code Playgroud)
在#2,例如,可能我是像URL http%3A%2F%2Fblah.com%2Fworld%2Fnews,blah.com/world/news,www.blah.com/world/news,http://www.blah.com/world/news/,或任何这种变化。脚本需要将它们视为相同的基本域和完整路径。
最终,它应该输出两个不同的列表,例如:
Based Domains Only:
424 http://youtube.com
325 http://facebook.com
200 http://digg.com
124 http://twitter.com
90 http://news.google.com
Unique URL:
254 http://facebook.com/mypage
123 http://news.google.com/Some-Big-Story
50 http://twitter.com/mrpopular
3 http://youtube.com/some-crazy-video
Run Code Online (Sandbox Code Playgroud)
我在grep上尝试了几种变体,并且遇到了一些困难。此外,在获取各种URL转换和标准化方面,我遇到了一些问题,以便比较正常进行并最终正确计数。
您将采取什么方法解决此问题?
* 注意:我想通过外壳来做到这一点。我可以用编写这些内容Ruby,但是部分内容是练习,看看如何使用各种有用的命令/工具将外壳中的各种“肌肉”更充分地弯曲。