我有一个Rails应用程序,我可以通过ajax发布问题的答案,它工作正常,但是,我添加了aws-js-sdk脚本,以便能够从浏览器上传我的答案中的图像,图像将上传到s3,发送回来在回调中新上传的图像的url,然后我保存答案.
我把这个库包括在内:
<%= javascript_include_tag "//sdk.amazonaws.com/js/aws-sdk-2.1.12.min.js" %>
Run Code Online (Sandbox Code Playgroud)
预期的行为:当我使用图像提交答案时,请求标题应包含HTTP_X_CSRF_TOKEN以验证表单是否在我的网站内提交.
问题:请求标头不包含HTTP_X_CSRF_TOKEN,这导致错误ActionController::InvalidAuthenticityToken
标题说明了,如果我使用水豚测试:
visit this page
expect this content
Run Code Online (Sandbox Code Playgroud)
并为每个功能(例如登录,注册,搜索,点击所有链接和按钮等)执行此操作,这样就足够了吗?为什么我需要测试控制器和模型?如果功能按预期工作,这是不是意味着一切都在协调工作?
我有这个简单的方法
def is_palindrome?(sentence)
raise ArgumentError.new('expected string') unless sentence.is_a?(String)
safe_sentence = sentence.gsub(/\W+/, '').downcase
return safe_sentence == safe_sentence.reverse
end
is_palindrome?"rails"
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我void value expression在第4行得到错误,这是return语句
这有什么不对?
我部署到heroku时不断收到此错误:
Searchkick::MissingIndexError in PostsController#search
Index missing - run Post.reindex
Run Code Online (Sandbox Code Playgroud)
它正在开发中,但我如何重新编制索引?如果可能,请包括确切的步骤.
这是我的控制器参考:
def search
@posts = Post.search(params[:search])
end
Run Code Online (Sandbox Code Playgroud) 我正在使用devise_omniauth facebook从Facebook检索用户图片,一切正常,我只想获得更大的图片,我已经阅读了很多类似的问题,但他们都提供了我觉得不方便的网址.这是我的user.rb:
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.email = auth.info.email
user.password = Devise.friendly_token[0,20]
user.name = auth.info.name
user.image_string = auth.info.image
end
end
Run Code Online (Sandbox Code Playgroud)
有什么建议 ?
当我在 chrome 上检查我的索引页时,head 标签有多个标签:
<script src="/assets/components/questions/question_likes.self-6aaf2ce97062977185e0d5f9fc31643ca8fd012bfb53c12752977afdab1260be.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/components.self-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/moment.self-0da3eb4ebf8fb8c3113d89afb90e5b7a87760d21b5b39a405a51fe05c8e40fd8.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery-fileupload/vendor/jquery.ui.widget.self-92c37a41e67e528eecf100716907331b4b9aa4f546bf75ef2e0529c8c03a562d.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery-fileupload/jquery.iframe-transport.self-e461f7ff2a60ee89459106a6f3e349cf79b7f56066b3c8cbc73389b30e1eb592.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery-fileupload/jquery.fileupload.self-79c952fc273d5a8955a6093f4f489dcd509c5a2cefb2b9a049d3cdb2710ec8d3.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery-fileupload/basic.self-6a3cf5192354f71615ac51034b3e97c20eda99643fcaf5bbe6d41ad59bd12167.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/jquery-fileupload/vendor/tmpl.self-c2108a63ad9ae9ab4a723bcf0104f6a92a63eb917331ff69fad6f02fe7219488.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/s3_direct_upload.self-a71af1e40427c6623d982df253581eb58013b84d84f45bcef7d0352ad4e82534.js?body=1" data-turbolinks-track="true"></script>
<script src="/assets/application.self-c88a422e522d3887e663830741eb19213b74b0bcee8413fffde6decde58266aa.js?body=1" data-turbolinks-track="true"></script>
Run Code Online (Sandbox Code Playgroud)
我认为 rails 将所有 js 文件连接成一个,为什么会发生这种情况?我正在使用react,没有turbolinks。