小编hta*_*irt的帖子

如何在项目中重命名rails controller和model

我开始使用Rails应用程序,一切正常.但是现在,我想重命名一个控制器和相关的模型:

我想将Corps控制器更改为Stores和模型相同(没有最终的s).

在谷歌上看,人们建议销毁,然后再次生成控制器和模型.问题是它会删除每个文件的实际代码!

有解决方案吗 提前致谢.

controller model rename ruby-on-rails

87
推荐指数
5
解决办法
5万
查看次数

使用TypeScript在useState React Hook上设置类型

我正在使用TypeScript项目迁移React以使用钩子功能(React v16.7.0-alpha),但我无法弄清楚如何设置析构元素的类型.

这是一个例子:

interface IUser {
  name: string;
}
...
const [user, setUser] = useState({name: 'Jon'});
Run Code Online (Sandbox Code Playgroud)

我想强制user变量为类型IUser.我唯一成功的试验是分两个阶段进行:打字,然后初始化:

let user: IUser;
let setUser: any;
[user, setUser] = useState({name: 'Jon'});
Run Code Online (Sandbox Code Playgroud)

但我确信有更好的方法.此外,setUser应该初始化为一个带有IUser输入的函数,并且不返回任何内容.

另外,值得注意的是,const [user, setUser] = useState({name: 'Jon'});没有任何初始化的使用工作正常,但我想利用TypeScript强制在init上进行类型检查,特别是如果它依赖于一些道具.

谢谢你的帮助.

typescript reactjs react-hooks

27
推荐指数
2
解决办法
1万
查看次数

MAC上的Node.js:从另一台计算机访问Node.js Web服务器

我在我的计算机上构建了一个Node.js Web服务器,使用了如此众所周知的http.web-server-Node.js示例:

var http = require('http');

http.createServer(function(req, res){
    res.writeHead(200, {'content-type': 'text/plain'});
    res.end('It works');
}).listen(3000, '127.0.0.1');
Run Code Online (Sandbox Code Playgroud)

这在运行服务器的计算机上有效(如预期的那样).

我想从同一局域网中的另一台计算机访问服务器.使用ifconfig运行该服务器的计算机(苹果的MacOSX)的终端上,我得到:192.168.0.6.

所以,在我的另一台电脑上,我打开浏览器并连接到http://192.168.0.6:3000,但我得到:

Oops! Google Chrome could not connect to 192.168.0.6:3000
Run Code Online (Sandbox Code Playgroud)

我的最终目标是能够使用我的智能手机连接到服务器.

欢迎任何帮助.如有必要,请随时询问更多详细信息.

提前致谢 :)

node.js

24
推荐指数
1
解决办法
2万
查看次数

Node.js - 压缩/解压缩文件夹

我正在潜入node.js的Zlib.我能够使用提供的示例(http://nodejs.org/api/zlib.html#zlib_examples)压缩和解压缩文件,但我无法找到有关为文件夹执行相同操作的更多信息?

一种可能性(但我认为是修补)是使用node-zip模块并逐个添加文件夹的所有文件.但是在解压缩时我会遇到问题(在这种情况下我会丢失文件夹).

知道如何使用Node.js压缩(然后解压缩)整个文件夹(尊重子焊工层次结构)?

谢谢.

zlib node.js

19
推荐指数
2
解决办法
2万
查看次数

HAML:创建data-xxx-yyy属性

我知道如何使用data-*属性创建链接:

%a{ :href => "#", :data => { :name ="John", :age => 24 } } Hi John
Run Code Online (Sandbox Code Playgroud)

产生:

<a href="#" data-name="John" data-age="24">Hi John</a>
Run Code Online (Sandbox Code Playgroud)

但是,如何对2深度数据名称进行分组,比如,data-user-name以及data-user-age对数据属性进行分组的方法.你可能猜到,我试过:

:data => { :user => { :name => "John", :age => 24 } }
Run Code Online (Sandbox Code Playgroud)

但它不起作用,给我奇怪的HTML输出:

<a href="#" data-user="nameJohnage24">Hi John</a>
Run Code Online (Sandbox Code Playgroud)

知道怎么做吗?提前致谢.

html5 haml ruby-on-rails

14
推荐指数
1
解决办法
1万
查看次数

如何使PHP库适应Codeigniter?

好男人(晚上).我的问题有点笼统:如何在CodeIgniter中使用任何PHP库(例如facebook sdk)?

通常,在下载PHP库并查看提供的示例时,可以使用includerequire_once加载库.使用$ this-> load-> library($ name,$ params)有哪些调整(和方法)

那之后如何使用库:用??? 替换$ var = new Library($ data)

如果我的问题尚不清楚,请通知我.

(奖金问题:如何将此应用于facebook-sdk?)

提前致谢.

php codeigniter

8
推荐指数
1
解决办法
1万
查看次数

Chrome插件可获得智能手机窗口大小

是否有Chrome插件可将导航窗口调整为智能手机或平板电脑窗口大小(iPhone,iPad,Blackberry,...)?

提前致谢.

size plugins google-chrome smartphone

8
推荐指数
1
解决办法
1万
查看次数

Node.js - 使用mocha测试表达应用程序时出现"错误:连接ECONNREFUSED"

首先,我没有收听端口80或8080.我正在收听端口1337.

我用express创建了一个简单的HTTP服务器.这是启动服务器的app.js脚本.

require('./lib/server').listen(1337)
Run Code Online (Sandbox Code Playgroud)

服务器脚本位于lib/server.js文件中,因为测试脚本中也将使用相同的脚本.

var http = require('http')
,   express = require('express')
,   app = express()

app.get('/john', function(req, res){
    res.send('Hello John!')
})

app.get('/sam', function(req, res){
    res.send('Hello Sam!')
})

module.exports = http.createServer(app)
Run Code Online (Sandbox Code Playgroud)

并且,最后test/test.js:

var server = require('../lib/server')
,   http = require('http')
,   assert = require('assert')

describe('Hello world', function(){

    before(function(done){
        server.listen(1337).on('listening', done)
    })

    after(function(){
        server.close()
    })

    it('Status code of /john should be 200', function(done){
        http.get('/john', function(res){
            assert(200, res.statusCode)
            done()
        })
    })

    it('Status code of /sam should …
Run Code Online (Sandbox Code Playgroud)

testing mocha.js node.js express

8
推荐指数
2
解决办法
2万
查看次数

无法部署到Heroku,因为服务器拒绝连接

我想将我的本地Rails应用程序(完美地运行)部署到Heroku,但是收到以下错误消息:

rake aborted!
could not connect to server: Connection refused
Is the server running on host "127.0.0.1" and accepting
TCP/IP connections on port 5432?
/tmp/build_21pkcz898c28o/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/postgresql_adapter.rb:1216:in `initialize'
Run Code Online (Sandbox Code Playgroud)

其次是关于postgres_adapter.

我有点失望,因为我认为Heroku覆盖了config/database.yml,所以为什么要谈论运行服务器127.0.0.1(我不是在寻找远程数据库)?

谢谢,

更新

如果这可以帮助,运行heroku config提供以下内容:

DATABASE_URL:               xxx
HEROKU_POSTGRESQL_GRAY_URL: xxx (the same xxx as above)
Run Code Online (Sandbox Code Playgroud)

postgresql ruby-on-rails heroku heroku-postgres

8
推荐指数
1
解决办法
3444
查看次数

如何在微服务中使用 Clean Architecture?

我刚读完鲍勃叔叔的“清洁架构”,现在想知道如何在微服务的上下文中应用它!

一方面,我认为微服务属于“框架驱动程序”层,因为它是用例之上的实现(它们是为用例提供服务的方式。)这样,我们专注于应用程序的核心(实体和用例),并在外层(包括微服务)的实现中保持灵活性。但是由于每个微服务都可以由不同的开发人员/开发团队维护,因此当用例发生变化时,他们会遇到困难(更难预测谁会受到影响)。

另一方面,我们可以将我们的应用拆分为多个微服务,相互解耦,并在每个微服务中应用 Clean Architecture。这种方法的优点是我们可以专注于每个微服务做一件事,并把它做好。但问题是我们开始使用技术分离(微服务)进行设计,这违反了专注于业务的主要清洁架构原则。此外,如果两个微服务使用相同的实体或用例,则很难不重复代码!

我认为第一个场景是最好的,但我想从其他开发人员那里得到关于这两个场景的长期好处和潜在问题的反馈。

microservices clean-architecture

8
推荐指数
3
解决办法
3814
查看次数