Rails

什么是Node.js的Connect,Express和“中间件”?

ぃ、小莉子 提交于 2020-05-09 10:34:30
问题: Despite knowing JavaScript quite well, I'm confused what exactly these three projects in Node.js ecosystem do. 尽管我非常了解JavaScript,但我很困惑Node.js生态系统中这三个项目究竟 是 做什么的。 Is it something like Rails' Rack? 它是否像Rails的机架? Can someone please explain? 有人可以解释一下吗? 解决方案: 参考一: https://stackoom.com/question/MAhI/什么是Node-js的Connect-Express和-中间件 参考二: https://oldbug.net/q/MAhI/What-is-Node-js-Connect-Express-and-middleware 来源: oschina 链接: https://my.oschina.net/stackoom/blog/4271546

stimulusjs 由Ruby on Rails 作者创建的web框架

橙三吉。 提交于 2020-05-07 08:44:19
stimulusjs 由Ruby on Rails 作者创建的web框架,stimulusjs 不像其他框架包含了完整的web开发方面,stimulusjs 主要主要是作为html element与javascript 对象的自动链接,同时官方文档也是比较全的,提供的starter包含了webpack 的运行使用(同时stimulusjs也内置了关于webpack 的helper),使用我们也可以集成parcel运行,同时我们可以完美的 集成turbolinks加速web资源的加载 参考资料 https://stimulusjs.org/handbook/hello-stimulus https://github.com/stimulusjs/stimulus https://github.com/turbolinks/turbolinks 来源: oschina 链接: https://my.oschina.net/u/4330404/blog/4268842

开源协议(GPL,LGPL, BSD,Apache等)以及开源协议的区别

时光怂恿深爱的人放手 提交于 2020-05-06 02:30:27
開源協議 : 世界上有關開源許可証,大概有上百種。 最為常見有(LGPL, Mozilla, GPL, BSD, MIT, Apache)。 修改源代後 新增代碼是否使用 每修改的文件是否 是否對需要對源代碼 衍生軟件的廣告是否 是否可以閉源 同樣的許可証 需要放置版權說明 提供說明文檔 可以使用你的名字促銷 LGPL許可証 NO NO NO Mozilla許可証 NO NO Yes GPL許可証 NO Yes BSD許可証 Yes NO NO MIT許可証 Yes NO Yes Apache許可証 Yes yes GPL   GPL授予程序接受人以下权利,或称“自由”:   * 以任何目的运行此程序的自由   * 以学习程序工作机理为目的,对程序进行修改的自由(能得到源代码是前提)   * 再发行复制件的自由   * 改进此程序,并公开发布改进的自由(能得到源代码是前提)   相反地,随版权所有软件的最终用户许可证几乎从不授予用户任何权利(除了使用的权利),甚至可能限制法律允许的行为,比如逆向工程。   GPL与其他一些更“许可的”自由软件许可证(比如BSD许可证)相比,主要区别就在于GPL寻求确保上述自由能在复制件及演绎作品中得到保障。它通过一种由Stallman发明的叫copyleft的法律机制实现,即要求GPL程序的演绎作品也要在GPL之下。相反

Linux环境使用Docker安装GitLab

房东的猫 提交于 2020-05-06 02:16:54
系统环境: CentOS 7.6 64位(同样适用于Ubuntu) 安装步骤: 1.创建文件夹 /home/docker/gitlab/etc /home/docker/gitlab/log /home/docker/gitlab/data 2.下载镜像并用外部匿名卷挂载数据 $ docker run \ --detach \ --publish 8090:8090 \ --publish 8091:22 \ --name gitlab \ --restart always \ -v /home/docker/gitlab/etc:/etc/gitlab -v /home/docker/gitlab/log:/var/log/gitlab -v /home/docker/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ce:12.5.0-ce.0 3.配置主机名 $ vim /home/docker/gitlab/etc/gitlab.rb external_url 'http://服务器IP:8090' gitlab_rails['gitlab_shell_ssh_port'] = 8091 4.重启gitlab $ docker restart gitlab 5.查看docker gitlab容器状态 $ docker ps 状态为

Rails Guide--Working with JavaScript in Rails; 如何把jquery转化为原生js

痞子三分冷 提交于 2020-05-05 01:08:18
1 An Introduction to Ajax 打开网页的的过程也叫:request response cycel。 JavaScript也可以request然后parse the response,还可以更新网页上的信息。 因此JS可以部分更新网页。这个技术称为Ajax. Rails默认使用CoffeeScript。包括应用JS.例子: $.ajax(url: "/test").done (html) -> $("#results").append html 这段代表从url上取数据,然后附加到一个id为results的div后面。 Rails 提供了内建支持来使用这个技术开发网页。无需你自己写这样的代码。有helper方法。 基本原理就是这样。 2 Unobtrusive JavaScript 不冒失的JS Rails使用这个技术来把JS附加到DOM上去。unobtrusive意味着不把JS代表混入到HTML。 而是用data-*属性来传递参数给behavior。 3 Built-in Helpers 3.1 Remote elements Rails提供了一组视图帮助方法,是用Ruby写的,用于帮你生成HTML元素。有时,你要增加Ajax到那些元素中。 因为Unobtrusive JS, the Rails "Ajax helper"其实一半是Ruby一半是JS。

使用WebSocket实现服务端和客户端的通信

耗尽温柔 提交于 2020-05-04 06:02:15
开发中经常会有这样的使用场景.如某个用户在一个数据上做了xx操作, 与该数据相关的用户在线上的话,需要实时接收到一条信息. 这种可以使用WebSocket来实现. 另外,对于消息,可以定义一个类进行固化. 主要是消息内容,接收人,发送人,是否已发送等. 用户上线时, 通过方法去查询出来然后进行发送 @ServerEndpoint(value = "/websocket/{sessionId}" ) public class MyWebSocket { // 静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。 private static AtomicInteger onlineCount = new AtomicInteger(0 ); // concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。若要实现服务端与单一客户端通信的话,可以使用Map来存放,其中Key可以为用户标识 public static CopyOnWriteArraySet<MyWebSocket> webSocketSet = new CopyOnWriteArraySet<MyWebSocket> (); // 与某个客户端的连接会话,需要通过它来给客户端发送数据 public Session session; /** * 连接建立成功调用的方法 * *

Python Django框架笔记(五):模型

社会主义新天地 提交于 2020-05-01 19:28:57
#前言部分来自Django Book (一) 前言 大多数web应用本质上: 1、 每个页面都是将数据库的数据以HTML格式进行展现。 2、 向用户提供修改数据库数据的方法。(例如:注册、发表评论信息等) 把数据存取逻辑、业务逻辑和表现逻辑组合在一起的概念有时被称为软件架构的 Model-View-Controller(MVC)模式。 在这个模式中, Model 代表数据存取层,View 代表的是系统中选择显示什么和怎么显示的部分,Controller 指的是系统中根据用户输入并视需要访问模型,以决定使用哪个视图的那部分。 对于Django,可以理解为遵循MVC模式: M ,数据存取部分,由django数据库层处理,即模型。 V ,选择显示哪些数据要显示以及怎样显示的部分,由视图和模板处理。 C ,根据用户输入委派视图的部分,由 Django 框架根据 URLconf 设置,对给定 URL 调用适当的 Python 函数。 由于 C 由框架自行处理,而 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),Django 也被称为 MTV 框架 。在 MTV开发模式中: M 代表模型(Model),即数据存取层。 该层处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。 T 代表模板(Template)