Skip to main content

Learning Ruby on Rails

 1. Polymorphic Association
http://railscasts.com/episodes/154-polymorphic-association
http://guides.rubyonrails.org/association_basics.html#polymorphic-associations

For instance, a book can be liked and a video can also be liked. To make a generalised association which can like both a book an a video, we can simply make a polymorphic association named likeable which contains the likable_type and likable_id. 

2.  Choose between has_many :through and has_and_belongs_to_many
http://guides.rubyonrails.org/association_basics.html#choosing-between-has-many-through-and-has-and-belongs-to-many

For instance, a book has many tags and a tag can be associated with many books. To make a simple many-to-many relationship, we can simply use has_and_belongs_to_many. However, to create an indirect association through a joint model, we can use has_many:through.

3. execJs: 'Could not find a JavaScript runtime' error.

To add gem 'execjs' gem 'therubyracer'in the gem file.

4. gem mysql sometimes triggers the following error:"incompatible character encodings: UTF-8 and ASCII-8BIT". Instead of using mysql, we need to use mysql2 which solved the problem. To install mysql2, you'll probably need to install the following package
sudo apt-get install mysql-client libmysqlclient-dev

5. To run rails app on port 80, the following command should be used
rvmsudo rails server -p 80 or rvmsudo rails server -p 80 -d

To stop the process, check the process id by typing cat tmp/pids/server.pid and then kill -9 the returned value.

6. Some very useful toolboxes.
Devise https://github.com/plataformatec/devise
Omniauth https://github.com/intridea/omniauth
Paperclip(rely on imagemagick) https://github.com/thoughtbot/paperclip,etc.
Kramdown http://kramdown.rubyforge.org/



Comments

Popular posts from this blog

Learning Public Speaking

In the past few weeks, I've been exploring the methodologies of public speaking that work for me. It takes a lot of trials and errors until I finally see some progresses. It would be good to share my thoughts and experiences so that people see my posts can have a more confident and effective start for public speaking.

Firstly of all, you need to overcome the fears to public speaking.  The common excuse I take is that I'm an introvert person. You have to be an extrovert person to master public speaking. However, that's not true. Public speaking is a skill, it can be trained and mastered. It may take some natural talents to be a super-influential speaker. But for a normal person to hit a point to deliver your messages clearly and powerfully, it's doable.

One of the inspiring talks I heard from an introvert speaker is Susan Cain's "The Power of Introverts". Susan says that introverts sometimes can deliver deeper thoughts than the extroverts.


Surprisingly, ev…

Time to Write sth about the NOC Israel

After more than a month's waiting, I received an email today from the Financial Aid office saying that I am not permitted to go for the NOC Israel programme. 

Dear ShaohuanI refer to your appeal to participate in NUS Overseas College (NOC) Israel.As spoken on 6 November 2012, we understand that you are very eager to attend the NOC and we had submitted your appeal, together with the appeal from NOC to the sponsor.  However, we regret to inform you that your appeal to participate in NOC Israel is not successful.   The sponsor has advised that you look for an internship locally instead, if needed.We wish you all the best. 

Actually, I was informed by the NOC coordinator that she has been informed by her colleagues that the sponsor officially rejected my appeal(together with Prof.Ben's and NOC's appeals) on 21st Nov. She tried to confirm with her colleagues whether the decision is final or not, hoping to help me for the last try. However, I guess the result won't be positive…

On "Kitchen Nightmares"

This weekend, I watched a few cuts of TV programmes on Youtube.

Listed as below:
Gordon Ramsay's Kitchen NightmaresGordon Ramsay's on Bad Boy's BakeryGordon Ramsay's escape to Thailand They are indeed quite inspiring. I didn't know these programmes until I saw someone shared the initial cut on the "5 dishes that Gordon Ramsay actually liked" on Facebook.
The immediate question came into my mind: "Why he's so pissed off with someone else's kitchens?"
Then I started to watch the other clips which tell the whole story. After watching a few clips, I started to realise his positive intention of helping those restaurant owners who are suffering in their F&B businesses find right ways to recover. The story normally starts with a failure restaurant. Then Gordon will taste their food, followed by investigating their operations. After identifying all the key issues, Gordon will give advises and transform the restaurant into a more promising one…