新手问题 实现预览文章的功能碰到了点问题

mzds · 2017年09月07日 · 最后由 runup 回复于 2018年02月05日 · 1486 次阅读

在用 markdown 在文本框输入文字后,想点击一个按钮跳转到文章预览界面,本想使用类似 preview/:id 的路由获取文章的,不过这时还没有存入数据库,所以这种方法不可行,想问下各位有什么比较好的方法实现这个功能吗?

如果要按照 REST 的思路来设计的话,尝试把产品领域里的逻辑概念抽取出来,创建一种业务上能说得通的新资源。

比如说没写完的文章,一般都叫做草稿,那么就先建个 ActiveModel(因为还不需要存到数据库,所以不用继承 ActiveRecord)的子类,名字就叫 Draft

这样来说,预览这个功能就等于“创建了一篇草稿”,那么在 HTTP 接口上应该体现成 POST /drafts/。有了这些思路,再往下自己写控制器,写模板渲染什么的,应该就不需要多说了。

5long 回复

感谢提供思路,有空试试

5long 回复

想了下,如果不存数据库的话如何在预览页面中取到草稿中的内容?

mzds 回复

参考 Rails 教程里创建 model 但未能通过验证的做法:即使还没存数据库,用户已经把 markdown 内容 POST 上来了。不要重定向,直接拿去渲染就是。

http://guides.rubyonrails.org/getting_started.html#adding-some-validation

把 ruby-china 的源码拿到,然后模仿一下呗

😓 用 JS 渲染啊

gyorou 回复

js 怎么实现,求教

gyorou 回复

效果很好,不过请教如何和 carrierwave 结合上传图片?

需要 登录 后方可回复, 如果你还没有账号请 注册新账号