繁体   English   中英

将数据从irb文件发送到Rails上的ruby

[英]send data from irb file to ruby on rails

我正在开发一个涉及RFID阅读器的项目。 我编写了一个简单的.rb文件,该文件读取RFID标签并输出uid。 我现在想做的就是将数据发送到我的Ruby on Rails应用程序(2.3.x)。 我真的不知道该怎么做。 另一个问题是我需要特定点的数据,例如:我注册一个用户,我希望RFID标签的uid与该用户相关联。 我怎么做? 我必须使用活动机器吗? 或者简单需要我的应用程序中的.rb文件?

.rb脚本(此脚本输出uid。如何将其发送到ror(2.3.x)应用程序?

require 'rubygems'
 require 'nfc'
 NFC.instance.find do |tag|
    p tag.uid
end

谢谢。

看来您的应用程序包含两个部分-服务的启用Web的前端和将用户与物理设备相关联的硬件前端。 我可能是错的,但是我怀疑在部署应用程序时,您是否希望用户走到数据中心扫描他们的标签!

我可以看到一个明显的分离 - 你需要在用户附近有一个RFID阅读器,这样他们就可以在阅读器前面挥动RFID标签并执行某种动作,然后是用户在家里的第二部分无法访问RFID阅读器。

我建议将这两个部分作为独立的应用程序使用,并具有将多个RFID与用户关联的逻辑。 在Rails / Active Record中,您可能具有User模型和与Tag的has_many关联。

您需要创建两个应用程序 - 您的Rails应用程序和轻量级桌面应用程序。 桌面应用程序在“扫描”计算机上本地运行。 首先,它可能是一个守护程序:查看“ daemons”,“ daemonize”和“ daemon-kit” gem。

在您的Rails应用程序中,您可以创建一个用于创建用户和RFID标签之间关联的路径。 例如。 POST到/ users /:id / tags

您上面写的小应用程序必须向该地址发送POST。 但是应用程序如何知道将标签与之关联的用户名? 不知道确切在做什么,我不能建议。 识别完RFID后,你可以直接询问用户名(STDIN.gets)并在命令行输入,或者在更复杂的应用程序中生成某种独特的令牌,并通过扫描应用程序的GET读入。

例如。 您可以将其作为守护程序运行,以将RFID标记与用户关联:

require 'rubygems'
require 'nfc'
require 'httparty'

class TagAssociator
  include HTTParty
  base_uri 'example.com'
end

NFC.instance.find do |tag|
  puts "What is your username?"
  username = STDIN.gets
  TagAssociator.post('/users/#{username}/tags', :query => {:uid => tag.uid})
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM