Я не совсем понимаю, как проверять логические значения в Rspec и Rails. Я понимаю все, кроме false
и nil
, взятых за true
в Ruby. Но когда я использую MySQL с Rails, он использует 1
для true
и 0
для false
(если мое понимание верно).
У меня есть следующая модель спец. Я' описать пользователя сделать до (: каждый) делать @valid_attributes = { : username => "mike", : password => "super_encryped_password", : email => " mike@example.com ", : superuser => правда } конец он "должен создать новый экземпляр с заданными допустимыми атрибутами" User.create! (@ Valid_attributes) конец это "должно иметь истину или ложь для суперпользователя" делать @valid_attributes [: superuser] = "привет" User.new (@valid_attributes). Должен иметь (1) .error_on (: superuser) конец конец com / yearperiod / 2005 / detail
Что является хорошим решением этой проблемы? Моя первая мысль - преобразовать каждый /
в -
, но затем я столкнулся с проблемой / накладными расходами на необходимость отслеживать, какие из них были преобразованы, так что при обратной записи в DB Я не случайно переключаю действительные -
на /
(если это имеет смысл)
edit: придет к этому подумать, я бы не знал как отслеживать каждую конвертированную /
... хмммм .....
edit1: Учитывая эту строку: «2001/2 - Fruit»
var encodedLinkText = HttpContext.Current.Server.UrlEncode(linkText); //result is "2001%2f2+-+Fruit"
, но потом, если я позвоню что linkhelper, с моей точки зрения, отображается как:
просмотреть источник:
предоставленная ссылка:
http: // localhost: XXXX / Period / 2001/2 + - + Fruit
, а мне нужно это как:
http: // localhost: XXXX / Period / 2001% 2f2 + - + Fruit
edit2: Браузер (тестирование в chrome) автоматически преобразует % 2f
в /
. Что теперь?
edit3: э-э-э ... похоже IE работает должным образом (как требуется) ... хммм ...