![](/img/trans.png)
[英]Problems with the encoding in the file name with send_data (ruby-on-rails)
[英]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.