JavaFree.org | RubyOnBr.org

Um pequeno esclarecimento

Acompanhar Um pequeno esclarecimento 14 posts, 4 participantes

440002948_b8dc8436b4 Marcelo Júnior 811 posts

Tenho o seguinte código:

Reparem a linha s += campo_texto modelo, coluna , eu tentei fazer com <<, mas não funciona, apenas com += . Pq isso?

ps.:Estou fazendo uma biblioteca de helpers para view. Se interessar, posso estar disponibilizando para integrar o plugin br que o pessoal esta falando por ai.

 
Avatar Shairon Toledo 1428 posts

“deve ser” que o método campo_texto não está definindo um objeto que contenha o método

tenta isso aqui

ou to_a se estiver retornando um array

 
Avatar Mereghost 1476 posts

Tem como postar o código do método “campo_texto”? Fica mais fácil entender o problema.

 
Avatar Roberto Soares 69 posts

Marcelo, também estou criando uma biblioteca de helpers que por coincidência também tem um método campo_texto. =] Podemos tentar fazer algo juntos.
t+!

 
440002948_b8dc8436b4 Marcelo Júnior 811 posts

Fala Roberto. Seria muito interessante.

E esse é o código do campo_text e suas duas variantes:

As classes de estilo, eu estou colocando diretamente na veiw. Uso o seginte método que tbm importa os javascript defatuls.

 
Avatar Roberto Soares 69 posts

Marcelo, ainda vou testar seus helpers. Por enquanto mando uma dica, quando tiver uma string muito grande, ocupando várias linhas faz assim:

abraços.

 
440002948_b8dc8436b4 Marcelo Júnior 811 posts

Interessante.!

Por isso que é bom a gente fazer um projeto em grupo, pois se aprende muito!!!

 
Avatar Shairon Toledo 1428 posts

Tava dando uma sapiada no código de vossas senhorias, gostaria de dar umas dicas:

Como o javascript e o css do método componente são constantes poderia coloca-los respectivamente em

-RAILSROOT/public/javascripts/mascara.js -RAILSROOT/public/stylesheets/mascara.css

F´acilita na criação de plugins.
Outra coisa, 3 métodos fazem a mesma coisa nada DRY :(
DRYALIZE-OS” com method_missing

Pode-se chamar os caras assim

Só dicas

 
440002948_b8dc8436b4 Marcelo Júnior 811 posts

Desculpa, mas não entendi o que este código esta fazendo.

 
440002948_b8dc8436b4 Marcelo Júnior 811 posts

E mais uma pergunta. No caso do campo_texto_nome. Ele carrega o css campo_texto_nome. Usando method missing, como ele vai garregat o css específico?

 
Avatar Shairon Toledo 1428 posts

vou falar do * antes da variável que vc ja vai sacar

se tivermos um método

o * args recebe n argumentos em um array
então podemos usa-lo assim

mas se usarmos um array do assim

pois não temos valor na posição args1 esse somar([2,3]) gera internamente algo assim

para somar(2,3)

saca.

para passar os ‘valores’ do array no exemplo temos

internamente isso gera

não obstante na linha

concatena-se method em args e passamos os parâmetros para o método campo_texto, nesse caso sem o * os valores para o método campo_texto ficariam todos na sua variável modelo.

Ficou confuso mas é isso :)

 
Avatar Shairon Toledo 1428 posts

E mais uma pergunta. No caso do campo_texto_nome. Ele carrega o css campo_texto_nome. Usando method missing, como ele vai garregat o css específico?

Observe que adicionei o último parâmetro o css_class_name que sempre recebera o nome do método
para a chamada

o css_class_name terá o mesmo valor.

 
440002948_b8dc8436b4 Marcelo Júnior 811 posts

O que não caiu a ficha foi sobre campo_texto_essa_parte_aqui. Como funciona isso? _essa_parte_aqui vai cair no parametro *args ou method? P

Poderia desenhar…ehehehhe

obrigado!

 
440002948_b8dc8436b4 Marcelo Júnior 811 posts

Shairon, eu fiz esse esquema com method_missing, mas esta voltando o seguinte erro:

undefined method `[]=' for :campo_texto_nome:Symbol

Estou fazendo assim:

Na view

A, e mais uma coisa. Eu sou novo nesse mundo web. Eu estou colocando o codigo CSS e JavaScript direto na tela, me parece que fica mais veloz quando o codigo JS esta na pagina. Mas se eu estiver enganado, por favor, me corrijam..

Obrigado!