应该是去掉 before_action :authenticate_sys_user!
就可以了,用 token 做验证时只需要 include DeviseTokenAuth::Concerns::SetUserByToken
。
Active Record
错误信息里没有LEFT OUTER JOIN m_selectlists
,说明m_selectlists
表没有被连接,
你的PrevdetailTmp
model 里有声明 belongs_to :m_selectlist
了吗?
a = (a || 0) + 1
试试这个
Test
.select(
:result,
'COUNT(result) AS results_count'
)
.where(id: 100)
.group(:result)
webpacker
原生行为不是异步请求,所以请求完之后会“换”页面,所以就不是 SPA 了吧
做 SPA 的话,表单应该不是直接提交的吧,而是监听表单的 submit
事件,并且用 event.preventDefault()
阻止表单的默认动作,再调用 api 去提交表单数据。
Rails 那边的 api 的 controller 要继承自 ActionController::API
,这样就不会有 CSRF token
的验证了,至于为什么不需要 CSRF token
请参考#7 楼
速度慢是因为 Asset Pipeline 编译时会在 tmp
下产生很多临时文件,而 mac 和 container 的文件系统不一样,同步时需要做大量的格式转换。 (docker 好像没有配置可以让部分文件或文件夹不做同步)
我这里用的 UI 是在网上购买的,所以带了很多 js 和 css 文件,8000 多个吧(docker-compose up 之后第一次载入需要 2 分钟),我把大部分暂时没有用到的 assets 删除之后就变快了(第一次载入不到 20 秒)。
最标准的解决方案应该是在 Linux 系统上使用 docker。
买台电脑装 linux 系统做开发
我用 docker-sync
时,同步会有延迟,改代码之后要把页面刷两三遍,才有反应,而且 container 里 rails g 出来的东西,不会在 local 出现,需要重启 docker 才行,推荐用官方的 cached
https://docs.docker.com/docker-for-mac/osxfs-caching/
services:
app:
volumes:
- .:/www/sample_project:cached
用 postgres 的 COPY 把 csv 导入到数据库,然后用 activerecord,count 一下。数据量大时处理速度应该会比直接读 csv 快。
中文简历就可以了吗?
我这里的做法是把顺序以 array 格式单独存在另一个表里,这样每次只更新一次,当然这样做的话,读取时要读两张表,或者 join 两张表。
我这里也出现同样的问题,但是我这里是开发环境,也是 application.html.erb,去掉 stylesheet_link_tag 就没问题,就算 application.css 是空的,只要有 stylesheet_link_tag,重启后第一次载入页面速度就会特别慢,第二次开始又不会有问题,每次都是重启后的第一次慢,你的 rails 是 5.2.0 吗?
在 Gemfile 里改 rails 版本,
执行bundle update rails
,
再执行rails app:update
,
如果问要不要覆盖文件,就选 Y。
再做rails webpacker:install
和webpacker:install:react
,
如果问要不要覆盖文件,就选 Y。
再把覆盖过的文件和之前版本比较、修正、commit。
@jl5161 4 楼的逻辑可以
从给的例子来说,最后要得到 a,b 和 c,a 对吗?
Ruby 大拿技术如火纯青也只能 15K 起
面试可以远程吗?
可否远程面试?
服务器启动,然后在这里可以查到 localhost:3000/rails/info/routes
我现在是直接用 RubyMine,自带跟 DataGrip 一样的功能
DataGrip 怎么样
试试这个,虽然不是传值,但是好像能解决你的问题
# model
with_options on: :checked do |model|
model.validates :platform, presence: true
# 如果以后有别的验证,这里可以多加几个validates
end
# controller
if something_is_true?
model.valid?(context: :checked)
else
model.valid?
end
年底真的 13 薪吗?
还可以试试这个,语法可能有错误,因为没跑过,大概是这个流程
class XxxController < ApplicationController
def hoge
# xxxxxxxxxxxxxxxxx
@system_dom = ProductCatalog.where('parent_id =?', params[:soft_selectid] ).map{|t| { name: t.name, id: t.id} }
render :json => { :software_kingdom => @product_ware.first.id, system_dom: @system_dom.to_json}
end
end
success: function(data){
$('#app_project_software_kingdom').val(data.software_kingdom);
data.system_dom.forEach(function(dom) {
$('#system_domain').append('<option value="' + dom.id + '">' + dom.name + '</option>');
});
}