使用pow运行sinatra

今天想拿 Sinatra 这个轻量级的 web 框架练练手,写个小程序,可是使用 ruby myapp.rb 运行非常的麻烦。所以想到用 Rails 推荐的 Pow 来跑。

Sinatra 建立的 app 文件根目录下建立 config.ru

“sh config.ru require "rubygems” #必须要写,不然pow报错 require “./myapp” #要运行的文件,相当于index,这里是myapp.rb

run Sinatra::Application “

参考:传送门

......

Read more →

使用Git管理服务器网站

摘要:push 到一个拥有分离的 work tree 和 一个运行 git checkout -fpost-receive hook 的远程代码库。

建立本地代码库

从零开始架设:

$ mkdir website && cd website
$ git init
Initialized empty Git repository in /home/ams/website/.git/
$ echo 'Hello, world!' > index.html
$ git add index.html
$ git commit -q -m "The humble beginnings of my web site."

到此拥有了一个想要上传网站的代码库。

配置远程代码库

首先我们需要远程服务器有 SSH 通道,并且可以不用输入密码连接 SSH (通过 keys)。

在服务器上,我们创建一个新的代码库来镜像本地代码库。

$ mkdir website.git && cd website.git
$ git init --bare
Initialized empty Git repository in /home/ams/website.git/

然后我们用一个 post-receive hookcheck out 最后的版本树到服务器网页目录(这个目录需要手动添加):

$ mkdir /var/www/www.example.org
$ cat > hooks/post-receive
!/bin/sh
GIT_WORK_TREE=/var/www/www.example.org git checkout -f
$ chmod +x hooks/post-receive

......

Read more →

改变octopress布局

一直以来不了解什么是 sass,所以没有尝试修改 octopress 的默认 layout ,今天大概看了一下,简单的修改方法如下。

颜色和宽度在octopress中定义在 /sass/base/_layout.scss 中。当然我们也可以直接改写这个文件。不过对于 sass 来说它可以很轻易的在 /sass/custom/_layout.scss 中自定义。

不了解 sass 的同学可以看 这里

......

Read more →

Wordpress主题thesis的简单使用

前几天帮助一个朋友修改wordpress商业版的thesis主题,通过简单的使用发现,这个东西确实强大!

主要通过两个文件来新增功能,custom_function.phpcustom.css 。 其他的功能暂时未用到。先来说说添加功能吧。

大概的编写规则:

php custom_function.php <?php function test() { ?> <div><?php echo "test"; ?></div> <?php } add_action("thesis_hook_after_sidebars","test") ?>

先写一个 function 然后调用 add_action(调用位置,方法名称)

具体的有以下可以参考:

传送门: Hooks \ Filters \ Custom Loop API

......

Read more →

关于rails笔记一

最近使用Rails写一个练习项目,关于一些基础的东西,做一点笔记。

首先是 Params

params 在代码中 find(params[:id]) 是查找http链接中的元素id。

参考:传送门

其次是 Find

关于 find 的用法,起始于想要在查询的内容中按照时间降序排序。

find(:all, :order => "created_up DECS")

其中

  • :all 是指在查询的内容中查找全部。也可以改为 :first 查找数据库中第一条记录。

  • :order 指顺序,后面的部分就是所要实现的功能,按照 created_up 的降序(DECS)排序。

另外,还可以直接写成去掉 find 的简洁模式。例如,要查询表里的第一条记录,并按照创建时间排序可以写成:

Test.first.order("created_at DESC")

关于 find 还有许多属性,再有就是条件查询。

两种写法:

Test.find(:condition => ["user_name = :user_name", { :user_name => user_name }])

简写:

Test.where(["user_name = ?", user_name])

简写必须 model 后面,既 Test.where.order 后面,不可写在其他 def 后面,既 Test.test.order 就会报错!!!切记!!!

......

Read more →