If I have a table: users(id, name, address, city)

How can I validate:
Name must be entered, but address and city can be null, but if there is
address, there also must be a city. So city can't be null, if address is
not, but bouth address and city can be null.

validates_presence_of name
validates ???

class User
  validates_presence_of :name
  validates_presence_of :city, :if => :address
  validates_presence_of :address, :if => :city