ruby

string.split method in ruby behaves funny to me

txt = "1aaa5" Then txt.split("a") produces [1, "", "", 5] in ruby 1.9. Anyone can explain why? Particularly, why not [1, 5]? Thanks. ...

Setting Mime Type for .ogv files in Rails Development Environment

I am playing around with HTML5 video and have the following snippet in an ERB: <video id="movie" width="320" height="240" poster="/test.jpg" preload="none" controls=""> <source src="/test.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;"> <source src="/test.ogv" type="video/ogg; codecs=&quot;theora, vorbis&quot;">...

Include params/request information in Rails logger?

Hi everyone, I'm trying to get some more information into my Rails logs, specifically the requested URI or current params, if available (and I appreciate that they won't always be). However I just don't seem able to. Here's what I've done so far: #config/environments/production.rb config.logger = Logger.new(config.log_path) config.log_...

Upload a file to a Rails Application from a Ruby command-line application

I've been busy on a social networking site for developers for a while (like a mix of github and Facebook), and I want to implement a simple system to create repositories, like on github. For this, I want to create a command-line application in Ruby (not Rails), which will check if there were made any changes, then upload changed or new f...

Ruby from the command line - sticking - Windows

I have seen this behavior on Windows with Ruby for a long time. If I install a gem sometimes the command line will just get "lost" and stop printing output until you go back to the command line and hit enter a few times. I notice this in other places too. Like starting up a Ruby on Rails console. Or generating a model with Rails. Have ...

regex to match trailing whitespace, but not lines which are entirely whitespace (indent placeholders)

I've been trying to construct a ruby regex which matches trailing spaces - but not indentation placeholders - so I can gsub them out. I had this /\b[\t ]+$/ and it was working a treat until I realised it only works when the line ends are [a-zA-Z]. :-( So I evolved it into this /(?!^[\t ]+)[\t ]+$/ and it seems like it's getting better,...

How do I DRY up business logic between sever-side Ruby and client-side Javascript?

I have a Widget model with inheritance (I'm using Single-Table Inheritance, but it's equally valid for Class-per-Table). Some of the subclasses require a particular field; others do not. class Widget < ActiveRecord ALL_WIDGET_TYPES = [FooWidget, BarWidget, BazWidget] end class FooWidget < Widget validates_presence_of :color end cl...

to_xml for fully-qualified trees using acts_as_tree

I have an ActiveRecord class that uses acts_as_tree. I'm trying to update the to_xml method so that if a child record's to_xml is called it will return it's xml nested in the parent/ancestor xml to give the fully-qualified path to that resource. As an example I have Compiler which is a parent of Compiler/Version. Compiler should be re...

Show surrounding words when searching for a specific word in a text file (Ruby)

Hi, I'm very new to ruby. I'm trying to search for any instance of a word in a text file (not the problem). Then when the word is discovered, it would show the surrounding text (maybe 3-4 words before and after the target word, instead of the whole line), output to a list of instances and continue searching. Example "The quick brown fo...

Regex to match javadoc style comments

I have files having content like /** * Some Content * @param .. * @author .. * */ function a_sample_function ( $args = '' ) { I need to extract the text Some Content @param .. @author .. given a function name a_sample_function ( the * can be removed by a gsub later I believe) I'm writing this in ruby. ...

Rendering field data as a link in Ruby on Rails...

Ok, I think this is probably an easy question but for the life of my I can't figure it out. I have created a table called ugtags and in that table I have two columns (beyond the basics), 'name' and 'link'. I am trying to allow a user to add a link to a page. Ideally they would enter the link title (name) and the url (link) and in the vi...

Download and write .tar.gz files without corruption.

I've tried numerous ways of downloading files, specifically .zip and .tar.gz, with Ruby and write them to the disk. I've found that the file appears to be the same as the reference (in size), but the archives refuse to extract. What I'm attempting now is: Thanks! def download_request(url, filePath:path, progressIndicator:progressBar) ...

Where is the best place to store globals in Rails app?

Hello. I was wondering if there is the best practice on where to store global settings in a rails app. What I mean by that is i.e: I have a few globals defined that may change, but not likely and it seems inappropriate to store them in DB since they are used so much. For instance I have SYSTEM_EMAIL & SYSTEM_EMAIL_SIGNATURE & SYSTEM_STO...

Ruby Sequel: is there a last_insert_id method?

Hi after an insert I need to know the ID from this row, how can I do that? ...

When to use a module, and when to use a class

I am currently working through the Gregory Brown Ruby Best Practices book. Early on, he is talking about refactoring some functionality from helper methods on a related class, to some methods on module, then had the module extend self. Hadn't seen that before, after a quick google, found out that extend self on a module lets methods de...

How do I assert that a model has a readable/writable attribute?

In one of my model's I'm using some meta programming to dynamically define some methods. I'd like to test this; thus, I need a compact way to assert my model has a readable/writable attribute with a certain name. Ideas? I'm using shoulda for unit testing if it makes a difference. ...

Ruby Gems Not Installing, Hangs While Getting Gems

I recently cleared out all of my ruby install and installed form sources using the instructions at hivelogic I have have been able to install a few gems, but most of the time, "sudo gem install rails" hangs. I've added the -V flag, and it just seems to hang, I don't get any error. And the process can not be killed. I can only reboot...

Shoulda: How would I use an instance variable outside of a setup or should block?

I'm trying to do something like the following: @special_attributes = Model.new.methods.select # a special subset @special_attributes.each do |attribute| context "A model with #{attribute}" do setup do @model = Model.new end should "respond to it by name" do assert_respond_to @model, attribute end end end ...

Understanding Ruby class vs instance methods

I have the following code: #!/usr/bin/ruby class Person def self.speak p = self.new puts "Hello" p.chatter end private def chatter puts "Chattering" end end p = Person.new Person.speak I'd like to make chatter private, accessible only within p.. but I want p to be able to access it within the class method. ...

Sorting nested hash in ruby

Provided the following ruby hash: { cat: { 1: 2, 2: 10, 3: 11, 4: 1 }, wings: { 1: 3, 2: 5, 3: 7, 4: 7 }, grimace: { 1: 4, 2: 5, 3: 5, 4: 1 }, stubborn: { 1: 5, 2: 3, 3: 7, 4: 5 ...