因为你同一时间发布了两个招聘贴,我以为是一家公司,所以屏蔽了。
这个帖子可以恢复,另一个还有问题,文末的链接不是公开访问的,有广告嫌疑。 https://ruby-china.org/topics/41939
建议公司招聘给出公司的联系方式,如果是猎头要表明自己是猎头。
那还是 WSL 比较好,相对来说免费,新人买一台服务器做练习太不划算。
之前有个 WSL 下 Rails 开发的帖子 https://ruby-china.org/topics/38499
“记录一个状态值”,具体是什么值呢?不同的数据有不同的处理方法,有持久化的,动态缓存的,或是只有启动时更改的配置。不同的数据有不同的处理方法。要说具体需求才能给出合适的解答。
建议看看 X-Y Problem https://coolshell.cn/articles/10804.html
把类定义放在 auto load path 以外的地方,例如 `lib'。
全局变量在多进程模式是不会共享的,在一个进程改了另一个进程还是旧的。比较推荐 redis。
全局变量是代码的 bad smell,把需求说出来看有没有其他解法。
我调试了一下,开发环境下在 initializer 里面打印 Clazz 的 object_id 和在 rails console 里面打印的 object_id 是不同的,不仅如此,每次修改 Clazz 的代码,它的 object_id 都会变化。但是生产模式不会有这个问题,所以我猜想是 Rails 开发模式的 auto reload 造成的。
我查文档证实了这个想法 https://guides.rubyonrails.org/autoloading_and_reloading_constants.html#reloading
为了实现开发过程修改源码后立即反应到已经启动的应用里面,实际上 Rails auto reload 会移除旧的 class 常量,然后用同一个名字新建一个 class。class 已经不同了,所以用 ===
检查是 false。详情可以看上面的连接。
结论是,在 auto reload 开启的环境下,不要 cache 可以 reload 的 class/module。
===
的行为是可以覆盖的,看 Clazz 有没有覆盖这个行为。
快点取消!
参考 https://github.com/slatedocs/slate
看样式是把 code block 浮动到右边。
这个链接是文档翻译 @andor_chen 维护的另一本书的翻译,看下他是否换了域名还是不维护了。
改线上了,这两天出公告。
无头浏览器指没有图形界面,直接执行脚本代码。electron 不属于这类。
electron 作用是利用本地系统通知和获得访问文件权限,这两个现在浏览器也有 API 了。剩下的就是习惯问题,像 https://vscode.dev/ 已经在浏览器内实现了完整功能,看能不能习惯完全在浏览器内写代码。
去掉 do
就行了。
从错误信息看从解包就出异常了,很可能是下载下来的包是坏文件。
有可能网络问题。
http://nginx.org/en/docs/http/server_names.html
通过 server_name 指定不同域名对应不同应用。
$ bin/rails -T | grep db
rails db:create # Creates the database from DATABASE_URL or config/database.yml for the current RAILS_ENV (use db:create:all to create all databases in the config). Without RAILS_ENV or when RAILS_ENV is development, it defaults to creating the development and test databases, except when DATABASE_URL is present
rails db:drop # Drops the database from DATABASE_URL or config/database.yml for the current RAILS_ENV (use db:drop:all to drop all databases in the config). Without RAILS_ENV or when RAILS_ENV is development, it defaults to dropping the development and test databases, except when DATABASE_URL is present
rails db:environment:set # Set the environment value for the database
rails db:fixtures:load # Loads fixtures into the current environment's database
rails db:migrate # Migrate the database (options: VERSION=x, VERBOSE=false, SCOPE=blog)
rails db:migrate:down # Runs the "down" for a given migration VERSION
rails db:migrate:redo # Rolls back the database one migration and re-migrates up (options: STEP=x, VERSION=x)
rails db:migrate:status # Display status of migrations
rails db:migrate:up # Runs the "up" for a given migration VERSION
rails db:prepare # Runs setup if database does not exist, or runs migrations if it does
rails db:reset # Drops and recreates the database from db/schema.rb for the current environment and loads the seeds
rails db:rollback # Rolls the schema back to the previous version (specify steps w/ STEP=n)
rails db:schema:cache:clear # Clears a db/schema_cache.yml file
rails db:schema:cache:dump # Creates a db/schema_cache.yml file
rails db:schema:dump # Creates a database schema file (either db/schema.rb or db/structure.sql, depending on `config.active_record.schema_format`)
rails db:schema:load # Loads a database schema file (either db/schema.rb or db/structure.sql, depending on `config.active_record.schema_format`) into the database
rails db:seed # Loads the seed data from db/seeds.rb
rails db:seed:replant # Truncates tables of each database for current environment and loads the seeds
rails db:setup # Creates the database, loads the schema, and initializes with the seed data (use db:reset to also drop the database first)
rails db:structure:dump # Dumps the database structure to db/structure.sql
rails db:structure:load # Recreates the databases from the structure.sql file
rails db:version # Retrieves the current schema version number
rails test:db # Run tests quickly, but also reset db
如果是推广产品就好好做个介绍,不是留个链接让大家猜你想表达什么。
跟随 Rails 版本升级,就不用太担心框架层面的漏洞。业务代码的漏洞强烈推荐 https://github.com/presidentbeef/brakeman 这个 gem,把它加到 CI 流程。
rack-attack 可以防比较简单的脚本攻击,例如不停的发贴。真遇到 ddos 攻击需要云服务的防火墙服务。
现在想学个语言能够自由去根据自己业务做定制开发
按这个需求 Rails 好。跟着 Rails 全栈是最省心的。
docker
卡池有没有 DHH 型的?
超出预算。
用框架没必要把源码都看懂吧,也就出 bug 的时候会看一下是框架问题还是自己问题。
Web 应用相当一部分在调外部接口,例如支付接口、错误收集、日志系统,如果用小众语言发现没有相应的 client 就要自己写了,很麻烦。(Ruby 在 Web 领域不是小众)
如果喜欢轻量级框架,应该试试 Sinatra,起码有 Stripe 在用,证明了生产环境可靠性。
(主楼没必要把文档贴上来,太长影响回复)
那实际超出了没?