我创建了数据库迁移,并在开发和生产服务器上迁移了数据。如果数据库是空的,我想从应用程序中填充数据库,并避免rake :seed和其他类似的方法。我知道它可以通过rake :seed完成,但是由于应用程序已经部署,所以我不想在开发和生产中污染deploy.rb。
在打开数据库或初始化活动记录时是否有钩子,我可以这样做
if !Pages.first
Pages.populate
end
我知道所有推荐的填充数据库的方法,但我还是更喜欢使用app。
谢谢
我的活动在覆盖整个屏幕的TextView中包含一个ScrollView集。TextView中的内容通常是多个页面的长度。
我正在尝试使触摸控制包括单龙头,双击,左滑动,右滑动和捏,这些都是好的。然而,问题是用户在不小心上下滚动ScrollView时很难左右滑动(因此取消了滑动检测)。
以下是我在TextView上使用的自定义TextView
public class OnSwipeTouchListener implements OnTouchListener {
private final GestureDetector gestureDetector;
private boolean m
我有如下代码:
B_t= LOAD 'test.csv' USING PigStorage('\t') as (id:chararray,usr_id:chararray,weed:chararray,ip:chararray);
在上面,我有一个带有名称杂草的字段,我希望使用filter命令从记录中删除这个字段,而不需要使用代码,如下所示:
B_f = FOREACH B_t GENERATE id , usr_id, ip
或
B_t= LOAD 'test.csv' USING PigStorage('\t') $0 as
必须将预定义的一组对象聚合到新对象中。但是,我希望用户为此指定一个自定义函数。
现在天真的方法是
def foo; end
objects = [1,2,3]
# result = eval(user_script)
result = eval("objects.inject {|sum, n| sum + n }")
我显然不想做什么!我读过关于$SAFE = 4的文章(参见),但我不确定这是否足够。特别是因为用户定义的脚本仍然能够调用其他函数,如foo。我只想允许访问基本的、不危险的Ruby核心函数。
Ruby是否有任何允许用户定义脚本安全执行的工具?我不需要是Ruby语