Rails 使用 carrierwave 上传文件

……崩溃,找了很久的资料,最后找到一份template才解决问题。 carrierwave是一个rails 上传文件的 gem,然而用不来…… 作者在 github 上的文档真的很没有条理性 前言 偶然间看到这篇文章,希望读者也可以多思考一下。 现在框架发展这么迅速,各种api泛滥,我们在寻求解决一个问题的时候,往往会有点急功近利。如果你考虑了底层实现,那你才是真正学到了东西,并能广泛运用它。否则,你顶多只是积累了当前框架或者api的使用经验。换了一个框架你就完全不会了。 但我的确是看完了这篇文章,我也的确去思考了,但是还是不会用!!! 因为网上很多文章和博客都忽略了一个非常重要的地方,下面我会说明。 这里详细介绍一下 carrierwave 的用法,并假设你已经开了上面那篇文章并思考过了。 安装 首先是安装,在gemfile中输入 gem 'carrierwave', '~> 1.0' 并执行 bundle install carrierwave 实际建立的是 model ,但这里便于区分并且生成的类同时也是 uploader ,输入命令…

CodeForces 842 C Ilya And The Tree

树上的选择性DP…… 不是很懂其他人的做法,偶然间看到有人用ruby A了,我也就用ruby敲了一蛤 速度有点玄…… 题意: 给你一棵树,每个节点都有权值,要你求每个节点到根节点所形成的树链 gcd。 其中每条树链都可以选择一个节点使得权值变为 0 。 思路: 感觉这就是裸题…… 只不过就是把数组改成树上了而已。 用一个栈或者队列去遍历这棵树,对于每个节点是否变0都考虑一下就好了…… AC Code #!/usr/bin/env ruby # encoding: utf-8 n = gets.to_i a = gets.split.map(&:to_i) g = Array.new(n) {[]} (n-1).times do u, v = gets.split.map(&:to_i)…

CodeForces 832 B Petya and Exam

比赛时候用c++ 搞了一个小时还没出来,结束后用ruby写了个正则改了两次就过了…… 真的是崩溃…… 题意: ?替代任意好字符,* 替代任意数目的坏字符 思路: 正则瞎搞 AC Code good = gets.to_str.chomp pattern = gets.to_str key = pattern.strip.gsub("?","["+good+"]").gsub("*","[^"+good+"]*") rg = Regexp.new("^"+key+"$") n = gets.to_i n.times do buf = gets.to_str if rg =~ buf puts "YES" else puts "NO"…

CodeForces 195 C 上班题

别说了,上班题,我比赛用c++ 写了一个半小时,晚上继续用c++写了两个小时,突然跟天海吹牛说,要是我会c++的正则表达式,这道题,妙了! 然后就说可以用脚本语言,我也只能勉为其难的用ruby写了。 推荐一个ruby在线正则表达式检测 网站 语法有些忘了……写的慢了点 题意: 模拟 try catch 思路: 无。 AC Code #!/usr/bin/env ruby # encoding: utf-8 n=gets.to_i thlist = [] thid = [] trylist = [] flag=0 n.times do |id| str=gets.strip! next if flag…

数值计算编程作业(Ruby版)

内容包括 1. 二分法求解二元一次方程的根 2. 牛顿法求解一元多次方程的根 3. 顺序消去法解线性方程组 4. 列选主元消去法解线性方程组 5. 全选主元消去法解线性方程组 6. Doolittle分解线性方程组 7. Crout分解线性方程组 8. 平方根法求线性方程组 9. 拉格朗日插值法 10. 牛顿插值法 11. 最小二乘法——线性拟合 12. 变步长梯形求积算法计算积分 13. 龙贝格算法计算积分 14. 改进欧拉算法求常微分方程的数值解 15. 四阶龙格-库塔法求常微分方程的数值解 累!!!!!!!不详细介绍了 #!/usr/bin/env ruby # encoding: utf-8 $eps=1e-8 $inf=0x3f3f3f3f class TwoSplit def initialize @a,@b,…

以Ruby为例浅谈动态语言的赋值机制

1. 问题提出 2. 结论 3. 数组解释 4. 数字解释 1 5. 数字解释 2 6. 对该特性的思考 7. Ruby与Python的内存管理机制 1.问题提出 最近的数值计算实验纠结了一下最后想用Ruby解决,结果在中途发现了这样的一个问题。 定义一个二维数组ary,我先是给 ary[0][0]赋值为 1,再是给 ary[1][0]赋值为 233,结果输出 ary[0][0] 居然为 233,输出整个ary ,发现每个数组第一项都是 233 。 详细介绍的可以看我在Ruby China发的帖子 2.结论 在这里我以Ruby为例详细介绍一下动态语言的赋值机制。 首先我们先明确几点: 1. 在ruby中参数的传递永远都是引用。…