Заголовок может выглядеть так, как будто я спрашиваю, как получить доступ / найти / обновить атрибут связанной / вложенной модели, но это не так, и, к сожалению, это лучший заголовок, который я смог выяснить.
Я бы хотел построить футбольную игру с ruby на рельсах, в которой совпали бы подпрограммы total_attack_value и total_defense_values и т. Д. Я не планирую делать симуляцию слишком глубокой, как в здесь и здесь , например, для вычисления и сопоставления отдельных значений corner_attack или side_attack, но серьезно намерены включить навык вратаря в total_defense_value.
Для пояснения, total_attack_value будет рассчитываться как "total_shooting_value x total_pass_value x total_possess_value x / + Rand () и т. Д.", И все эти значения ..._ будут рассчитываться внутри модели Team, но total_defense_value должно иметь "goalkeeper_skill_value", который будет навыком игрока, выбранного пользователем в качестве вратаря на предстоящий матч, как я и планировал.
Я не могу думать ни о чем другом, кроме как сохранять и извлекать того игрока, которого пользователь поставил на позицию вратаря, используя виртуальные атрибуты, так как пользователь собирается запланировать матч на будущее время, и выбор вратаря должен сохраняться до тех пор. В этом случае я собираюсь создать модель Player_Position и модель ассоциации, принадлежащую как Position, так и Player, и функцию assign_positions в модели Player и т. Д. Однако это именно то, чего я пытаюсь избежать, код и сложность. Это то же самое, что предложить пользователю возможность перетаскивать игроков на отдельные позиции, как это видно в некоторых играх , таких как soccermanager и goalunited.
Предлагает ли rails какое-либо простое / готовое решение этой проблемы по сравнению с простыми операциями CRUD, такими как атрибут или STI?