How to set up ( Fedora php ruby on rails )

Monday, January 2, 2012

Android: How to include classes from other project from command line

How to add reference to an other android project(ANT)

Often we need to refer classes from other projects using eclipse is kinda easy and google will help you a lot in doing that, but here I am going to show how to include classed or refer other android project libs in your project

Suppose you have project one with a class Student with attribute name along with setter and getter and want to import Student class in second project, First you need to update project second to tell where to load files that can be done by
android update project --path ./ --library ./../SecondProject
if you debug your code now you probably will get exception because (probably) project one is not a library project. so you need to go to first project and update file and add android.library=true after target=your target
now compile the project all will go well.

Now you want to use the Student class from package one ( is package name then you can use import; 

Sunday, June 12, 2011

Cpanel gems installation errors

You need ssh access to server to perform all these tasks

Did you get an errors like this when installing gems on cpanel

Missing these required gems:

You're running:
ruby at /usr/bin/ruby
rubygems 1.3.5 at /home/bronze/ruby/gems, /usr/lib/ruby/gems/1.8/

Run `rake gems:install` to install the missing gems.

You need to add path in your .bashrc file

if [ -f /etc/bashrc ]; then
. /etc/bashrc

export PATH=$PATH:$HOME/ruby/gems/bin
export GEM_PATH=$HOME/ruby/gems:/usr/lib/ruby/gems/1.8/
export GEM_HOME=$HOME/ruby/gems

And this to your config/environment.rb file

ENV['GEM_PATH'] = '/home/username/ruby/gems:/usr/lib/ruby/gems/1.8/'


Must replace username with your server username

What next

Source your .bashrc file or create new ssh session by logging out and logging in back

In most cases you won't have your .bashrc and .bash_profile file and you need this to make it work

Code for .bash_profile

if [ -f ~/.bashrc ]; then
. ~/.bashrc

Wednesday, June 8, 2011

Encoding::UndefinedConversionError Ruby/Rails

Problem is you opening a binary file and writing it somewhere on other file using ruby/rails


open file as binary and write it back, 'w+b', 0644) do |file|

Sunday, February 20, 2011

How to remove Model Name from errors message in rails

Remove model/Table name from form errors

Here i am going to use regular expression to remove model/table name from my errors messages

<% @company.errors.full_messages.each do |msg| %>
<%= msg.gsub(/^\w+/, "").strip.capitalize %>
<% end %>

Tuesday, February 15, 2011

Development to Production db:migration

1. How to create tables in production environment from development

2. How to copy tables from development to production

this will only migrate tables structure from development to production

RAILS_ENV=production rake db:migrate

Monday, February 14, 2011

Rake Route(How to see routes of specific controller)

How to target specific controller in rake routes command

Most of time i need to look at my routes and as project increases so the list of routes and it's get confusing to find a specific routes using rake routes command so here is the answer

rake routes CONTROLLER=controller_name

For Example

rake routes CONTROLLER=posts

Thursday, December 30, 2010

CodeRay with Ruby On Rails 3

Code highlight in Ruby On Rails 3 Using CodeRay

First open your Gemfile and add

gem 'coderay'

and run bundle install

bundle install

Next you need to add a method any where you want best place would be ApplicationController

def coderay(text)
text.gsub(/<code( lang="(.+?)")?>(.+?)<\/code>/m) do
CodeRay.scan($3, $2).div(:css => :class)

Suppose you have controller Post and it's action show

def show
@post = Post.find(params[:id])
@post.body = coderay(@post.body)

now in view file change following

<%= @post.body %>


<%= sanitize @post.body %>

Now you need a stylesheet that define color scheme for your code{/* attribute name fat */}{/* attribute name */}
span.av{/* attribute value */}{/* attribute value fat */}{/* bin */}
span.c{/* comment */}{/* char */}{/* class*/}{/* colour */}{/* constant */}{/* class variable */}
span.df{/* definition */}
span.di{/* directive */}
span.dl{/* delimeter */}{/* doc */}
span.ds{/* doc string */}
span.e{/* escape */}{/* error */}
span.ex{/* exception */}
span.fl{/* float */}
span.fu{/* function */}
span.gv{/* global variable */}
span.hx{/* hex */}
span.i{/* integer */}
span.ic{/* include */}{/* ident */}{/* inline */}{/* interpreted */}
span.iv{/* instance variable */}
span.k{/* content */}{/* css attribute */}{/* css selector */}{/* label */}{/* local variable */}
span.mod{/* modifier */}
span.oc{/* oct */}
span.on{/* operator name */}
span.op{/* operator */}
span.pc{/* pre constant */}{/* pre type */}
span.pd{/* predefined */}
span.pp{/* preprocessor */}
span.rx{/* reg exp */}
span.r{/* reserved */}
span.s{/* string */}{/* shell */}
span.sp{/* space */}{/* symbol */}
span.ta{/* tag */}{/* tag fat */}
span.ts{/* tag special */}
span.ty{/* type */}
span.v{/* variable */}
span.vl{/* css value */}
span.xt{/* xml text */}