Grails/GORM: значение belongsTo в 1:N отношения

Это излишне многословно.

x = "test"
"#{x}"
# => "test"

Это буквально то же самое в вашем случае.

Идиоматическая версия этого кода на Ruby выглядит следующим образом:

def write_hello(filename)
  File.open(filename, "w") do |file|
    file.puts "Hello, world! I'm Ruby :)"
  end
end

При этом используется многострочная форма do ... end, которая часто намного легче понять и понять, но в остальном эквивалентна ] форма. Новички в Ruby могут быть немного озадачены тем, как { x: 'y' } и { |x| 'y' } являются совершенно разными вещами, поэтому это позволяет избежать двусмысленности.

Нет необходимости ставить что-то в отдельности. Это было бы необходимо, если вы хотите добавить расширение файла, например:

File.open("#{filename}.txt", "w") do |file|
  # ...
end

Где вы бы назвали это как:

write_hello(:example)

И это создаст example.txt [1115 ]

7
задан knorv 17 March 2009 в 15:57
поделиться

2 ответа

Указать ли, что belongsTo зависит от типа справочного действия, Вы хотите.

Если Вы хотите, чтобы Grails сделал На, Удаляют, РАСПОЛАГАЮТ КАСКАДОМ справочное действие, то укажите belongsTo. Если Вы хотите, чтобы Grails сделал На, Удаляют, ОГРАНИЧИВАЮТ справочное действие, то не указывайте belongsTo.

например.

// "belongsTo" makes sense for me here. 
class Country {
  String name
  static hasMany = [states:State]
}

class State {
  String name;
  // I want all states to be deleted when a country is deleted. 
  static belongsTo = Country
}

// Another example, belongsTo doesn't make sense here
class Team {
  String name
  static hasMany = [players:Player]
}

class Player {
   String name
   // I want that a team should not be allowed to be deleted if it has any players, so no "belongsTo" here. 
}

Надеюсь, это поможет.

19
ответ дан 6 December 2019 в 08:45
поделиться

Определение belongsTo позволяет Grails прозрачно каскадным обновлениям, сохраняет и удаляет детям объекта. Без belongsTo, при попытке удалить основную запись, Вы закончите тем, что получили нарушение внешнего ключа, если он будет иметь какие-либо детали, он владеет.

2
ответ дан 6 December 2019 в 08:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: