即日启程

我又开始了,开始创业,是的,开始有一个“苦”的过程!

从前年的8月份,也就是12年8月份我从神州融合辞职加入BUZ,一个爱尔兰团队。美其名曰作为CTO其实却没有什么实质性的东西。每天还是coding,不过不同的就是你需要一个人coding. 其实要是问我为什么,我可能的答案就是自由和不错的工资。

而现在我又要开始创业了。为什么呢?

首先一定不是为了钱,或者有钱,因为那是不可能的。我喜欢创业是一种生活方式。我喜欢的生活方式。用句话说就是不用在给别人做一些傻X的事情!因为聪明人太多了!

当然这次新的开始我是思考了一部分时间的。一面是出国工作的机会而且带着你一定认为很多的薪资;一面是未知的未来。但是我心里其实早就知道这个答案,因为我已经不那么年轻了。别说我心态不好,因为事实就是事实。

这次幸好有个朋友和我一起,他技术还是不错的,这样就减少了我很大一部分的后顾之忧。

也希望我们的合作愉快,不过不管怎么样这次是必须进行下去了。相比于以前的青葱年少,此次还是让我无疑增添了很大的信心!

这次我要做的依然是社交网络,一个很实在的社交网络,我有很大的信心做好,是的!

启程!

Rails 4 image

.button.checkable { background-image: url(image_path('tick.png')); }
also
image-url('asset_name')
audio-path('asset_name')
[asset_type]-url('asset_name') #Becomes url('assets/asset_name')
[asset_type]-path('asset_name') #Becomes 'assets/asset_name'

asset_type may be one of the following: image, font, video, audio, javascript, stylesheet

How to install Bootstrap in rails app

Of courese by gem, but actullay it's not necessary!

Download it from offical site:

  • Copy:

    bootstrap/dist/css/bootstrap.css and bootstrap/dist/css/bootstrap.min.css

    To: app/assets/stylesheets

  • Copy:

    bootstrap/dist/js/bootstrap.js and bootstrap/dist/js/bootstrap.min.js

    To: app/assets/javascripts

  • Update: app/assets/stylesheets/application.css by adding:

    *= require bootstrap.min

  • Update: app/assets/javascripts/application.jsby adding:

    //= require bootstrap.min

Why not "vendor/ "?

The reason is you'll be able to overwrite Bootstrap styles in the future. If later you want to add a custom.css.scss, just

 *= require bootstrap                                                            
 *= require custom  

If you places them in vendor/assets, the bootstrap files will be loaded last like this:

<link href="/assets/custom.css?body=1" media="screen" rel="stylesheet">
<link href="/assets/bootstrap.css?body=1" media="screen" rel="stylesheet">

So, some of your customizations won't be used as the Bootstrap styles will override them.

rails c
Rails.application.config.assets.paths

Rails will search for assets in many locations, get the list by this command.

n the output you'll see that app/assets takes precedence, thus loading it first.

 

《当幸福来敲门》

1. determined

be + adj : 意志坚定的

2. learn on your own

自学

3. one too many

好多次

4. I'll say = I agree

5. pull off 

靠边停车,圆满完成

6. fill one's spot = 占(顶替)上某人的位置

7. all the way 彻头彻尾

Your are a asshole all the way.

8. You are a piece of work.

你也就这样了。

部署中文问题 server Mysql2::Error: Incorrect string value:

在部署网站的时候可能出现这个错误,原因就是msyql不支持这个字符集:

登录mysql,输入‘status’ 你就能看到mysql的字符集,比如db, service ,client等一共4个。

如果想支持中文那么就改成utf-8

vi /etc/my.conf

在[mysqld]下面加入

#support chinese
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

另外创建mysql数据库的时候也可以手动支持utf-8

CREATE DATABASE mydb
  DEFAULT CHARACTER SET utf8
  DEFAULT COLLATE utf8_general_ci;

改好之后通过这个命令来查看结果:

show variables like "%character%";show variables like "%collation%";

 

MySQL 两个相同数据库表的合并

情景:本地数据库有张表places, 导入服务器的places,两个数据都不一样,那么如何合并?

1. 导出本地数据库: mysqldump -u root -p database places > places.sql

2. 复制到服务器: scp places.sql server:~

3. 登录mysql mysql -u root -p

4. 创建一个新表和places一样的:create table places_temp like places;

5. 备份表中的数据到新创建的数据库: insert places_temp select * from places;

6. 删除places表中的数据,让id重新开始: truncate table places;

7. 导入数据到这个空places表中: mysql database places < places.sql

8. 把备份好的数据加入到现在的palces数据库中:insert ignore into places select * from places_temp;

貌似union命令也可以实现,没有亲自操作过。

 

 

 

 

Git 修改了.gitignore 文件

如果你已经track了文件添加到了.gitignore文件中了,那么你可以单独的删除那个文件通过

git rm <file>

但是如果很多文件呢?

首先提交所有可能的改变的文件,然后从index中全删除,再次添加:

git rm -r --cached .
git add .
git commit -m ".gitignore is now working"

添加多张图片ActiveAdmin


class Piece
  has_many :pictures
  accepts_nested_attributes_for :pictures
end

class Picture
  has_attached_file :photo
end

如果你使用的是Rails 4.0, 那么在Piece的Controller里面
 def product_params
    params.require(:product).permit(pictures_attributes:[:photo])
 end 

不要忘了picture要生成paperclip的几个字段
rails g paperclip picture photo (这里不要生成piece的,翻过错误呀)

然后admin的piece.rb里面不要忘了
permit_params [:id, :logo, :photo,:_destroy] 字段可能不一定是,不过明白意思就可以了

f.has_many :pictures do |ff|
  ff.input :photo, as: :file, :hint =&gt; ff.template.image_tag(ff.object.photo.thumb.url)
  ff.input :_destroy, as: :boolean
end 

 

Mysql 客户端不能远程登录问题

雇了一个人给我开发网站,然后需要用客户端连接服务器的mysql,phpadmin 还要占用服务器环境和资源,那就用客户端吧。

下了两个比如heidisql 云云, 发现连接不上,应该是权限问题。

故而查看服务器mysql的mysql数据库的user表,发现用户root只有localhost,这样不行,需要“%“所有权限。

那我们就重新添加一个用户:

CREATE USER 'yuan'@'localhost' IDENTIFIED BY '123456';

GRANT ALL PRIVILEGES ON *.* TO 'yuan'@'localhost' WITH GRANT OPTION;

CREATE USER 'yuan'@'%' IDENTIFIED BY '123456';

GRANT ALL PRIVILEGES ON *.* TO 'yuan'@'%' WITH GRANT OPTION;

好的,这是方法。那么你可能遇到这个错误,当赋予权限的时候

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

搜遍千山和万水找到了答案,就是要升级mysql

/usr/bin/mysql_upgrade -u root -p

之后遍可以了。

对于CentOS用户使用上面的命令,Mac用户使用这个(没试过)

/usr/local/Cellar/mysql/5.5.25a/bin && mysql_upgrade

需要注意的问题:

如果新添加的用户 "yuan" 只有“%"host 是不行的,必须同时有“localhost”和“%”,否则还是没有办法从客户端连接。

2 如果新添加的用户被删除,再次添加的时候 会出现下面的错误

ERROR 1396 (HY000): Operation CREATE USER failed for 'yuan'@'localhost'

需要

mysql> flush privileges;

 
3. 如果遇到奇怪的情况,尝试重启mysql

/etc/init.d/mysqld restart

4. 如果还是奇怪问题,查看下是不是用户的user有空的删除或者赋值

mysql> delete from user where user="";

Rails 数据库常用命令

rake db:schema dump

将数据库中的表结构复制到 .schema文件中。

rake db:schema:load

将.schema 中的内容copy到一个migration文件, 然后运行 rake db:migrate

如果丢失migration文件怎么办?

schema_migrations中的文件将会被认为是已经进行过migration 的,所以需要经版本号插入这个表:

insert into schema_migrations values('20090521153438');

如果是从插件中的migration

insert into plugin_schema_migrations values('my_plugin', '005');