小编Tay*_*iss的帖子

使用单个 form_with 在 Rails 中创建和编辑嵌套资源

背景

在我的应用程序内部,一个系列由许多书籍组成。系列的“显示”页面允许用户查看系列中的所有书籍并使用表单向系列添加新书籍。

Show页面上列出的每本书都有一个指向该书的Edit页面的链接。编辑页面包含用于最初添加书籍的相同表单。编辑书籍时,表单应自动填充书籍现有信息。

如何配置我的form_with标签,以便它既可以创建新书又可以编辑现有书(自动填写编辑表单)?我尝试了以下配置,但它们要么破坏了编辑页面,要么破坏了显示页面:

  1. <%= form_with(model: [ @series, @series.books.build ], local: true) do |form| %>
    • 打破书编辑页面
    • 错误:没有错误,但表单不会自动填充数据
  2. <%= form_with(model: @book, url: series_book_path, local: true) do |form| %>
    • 休息系列 显示页面
    • 错误: No route matches {:action=>"show", :controller=>"books", :id=>"6"}, missing required keys: [series_id]
  3. <%= form_with(model: [:series, @book], local: true) do |form| %>
    • 休息系列 显示页面
    • 错误: Undefined method 'model_name' for nil:NilClass
  4. <%= form_with(model: [@series, @series.books.find(@book.id)], local: true) do |form| %> …

ruby ruby-on-rails ruby-on-rails-5 ruby-on-rails-5.2

5
推荐指数
1
解决办法
3284
查看次数

移动项目,现在引用已损坏

我按照这些说明将一个项目移动到另一个文件夹,现在我所有的引用都被破坏了,我不知道如何修复它们。

损坏的参考

visual-studio

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

如何检查ArrayList是否包含来自另一个类的对象

我有两个班,一个Fighter班级和一个Player班级.本Player类包含一个ArrayList称为fleet被填充了玩家的船只.

我可以毫无问题地将船只添加到玩家的舰队,但是当我尝试检查玩家的舰队中是否存在战斗机时,它会给我一个错误说法Fighter cannot be resolved to a variable.

我很困惑为什么我可以为舰队添加战斗机,但无法检查是否有战斗机存在于舰队中.

Fighter.java

public class Fighter extends Ship {
    public Fighter(){
        super(9,1,1); //Sets attack and defense values
    }
}
Run Code Online (Sandbox Code Playgroud)

Player.java

import java.util.ArrayList;
import java.util.Scanner;

public class Player {

    ArrayList<Ship> fleet = new ArrayList<Ship>();

    public void takeAHit(){
        if (fleet.contains(Fighter)){                  //Error happens here
            System.out.println("Fighter found");
        }
    }

    public void buildFleet(){

        Scanner userInput = new Scanner(System.in);

        System.out.println("How many fighters?");

        int fighters = Integer.parseInt(userInput.next());

        while …
Run Code Online (Sandbox Code Playgroud)

java arraylist

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