Ostatnie wiadomości

Strony: [1] 2 3 ... 10
1
Pomoc / Podpowiedzi dla serwisów w IDE (netbeans)
« Ostatnia wiadomość wysłana przez nicraM dnia Lipiec 23, 2017, 00:33:46 »
Witam
Mam taki serwis:
Cytuj
<?php

namespace DataBundle\Services;

use Doctrine\ORM\EntityManager;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use Symfony\Component\Config\Definition\Exception\Exception;
use Symfony\Component\DependencyInjection\Container;
use DataBundle\Entity\Country;


/**
 * CountryService
 * @package CountryService
 *
 *
 */
class CountryService {

  protected $em;
  private $container;
 
  /**
   *
   * @param EntityManager $entityManager
   * @param Container $container
   */
  public function __construct(EntityManager $entityManager, Container $container)
    {
        $this->em = $entityManager;
        $this->container = $container;
    }

  /**
   *
   * @return array Wynik
   */
  public function getAllCountries(){
   
    $qb = $this->em->createQueryBuilder();
   
    $qb->select('c')->from('DataBundle:Country', 'c');
    $res= $qb->getQuery()->getArrayResult();
     
    return $res;
   
}
  }

Serwis jest zarejestrowany i działa. Ale NetBeans nie chce mi podpowiadać metod jakie są dostępne w tym serwisie.

Cytuj
$dc = $this->get('data.country');
$countries = $dc->getAllCountries();

Tej metody getAllCountries() niestety nie podpowiedział :/

Jak ustawić netbeans dla Symfony by podpowiadał ?

2
Pomoc / Odp: w jaki sposob przekazac zmienna obiektowa do funkcji w kontrolerze
« Ostatnia wiadomość wysłana przez Valantir dnia Lipiec 17, 2017, 21:10:47 »
Wysyłaj formularz postem i w poście będziesz miał wszystkie dane
3
Pomoc / Odp: W jaki sposob pobrac zmienna z URL
« Ostatnia wiadomość wysłana przez Michał Pipa dnia Lipiec 17, 2017, 17:34:58 »
Mam też dodatkowe pytanie odnośnie   Handling Form Submissions. Tam jest taki kawałek kodu np:

 public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('task')
            ->add('dueDate', null, array('widget' => 'single_text'))
            ->add('save', SubmitType::class)
        ;
    }
i w związku z tym mam pytanie gdzie ma sie znajdowac ta metoda buildForm() w jakiej klasie bo rozumiem że obiekt $builder otrzymam z importu FormBuilderInterface . Jeszcze jedno gdzie i kiedy ta metoda bedzie wywolywana , czy moze w funckji gdzie submituje formualrz ?

W przykładzie Handling Form Submissions masz kompletny kod kontrolera, który pozwala wyświetlać i obsługiwać formularz. Niczego więcej nie potrzebujesz. W tym przykładzie formularz budowany jest w kontrolerze za pomocą metody createFormBuilder(), co nie jest najlepszą praktyką. Wtedy kod tworzenia formularza będzie skopiowany w każdym kontrolerze, który będzie go używał. Rozwiązaniem tego problemu jest przeniesienie kodu budującego formularz do osobnej klasy i używanie jej do budowania formularza w kontrolerach. Metoda buildForm() pochodzi właśnie z takiej klasy.

Więcej informacji: Creating Form Classes.
4
Pomoc / w jaki sposob przekazac zmienna obiektowa do funkcji w kontrolerze
« Ostatnia wiadomość wysłana przez and777 dnia Lipiec 15, 2017, 15:19:42 »
Witam

W poprzednim poscie chyba troche przekombinowałęm . Tym razem próbuje przekazac  wartosc z formularza do templatu . Problem w tym że formularz tworzę w jednej funkcji i nastepnie za pomoca  $this->redirect() przekierowuje akcje do drugiej funckji i z tamtad do widoku . Chciałem sie was zapytac jak przekazać zmienna obiektowa $form z jednej funckji do drugiej w kontrolerze ?
5
Pomoc / Odp: W jaki sposob pobrac zmienna z URL
« Ostatnia wiadomość wysłana przez and777 dnia Lipiec 14, 2017, 16:48:32 »
Masz absolutną rację ze zemienną $request , nie zwróćiłem na to uwagi.
Mam też dodatkowe pytanie odnośnie   Handling Form Submissions. Tam jest taki kawałek kodu np:

 public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('task')
            ->add('dueDate', null, array('widget' => 'single_text'))
            ->add('save', SubmitType::class)
        ;
    }
i w związku z tym mam pytanie gdzie ma sie znajdowac ta metoda buildForm() w jakiej klasie bo rozumiem że obiekt $builder otrzymam z importu FormBuilderInterface . Jeszcze jedno gdzie i kiedy ta metoda bedzie wywolywana , czy moze w funckji gdzie submituje formualrz ?
Wielkie dzięki , POZDRAWIAM  :)
6
Pomoc / Odp: W jaki sposob pobrac zmienna z URL
« Ostatnia wiadomość wysłana przez Michał Pipa dnia Lipiec 14, 2017, 12:18:53 »
Próbuje dostać sie do zmiennych wysyłanych z formularza , mam taki kod w funkcji

$request = Request::createFromGlobals();

Nie powinieneś w ten sposób tworzyć obiektu Request w kontrolerze. Skąd w ogóle taki pomysł? Obiekt Request pobieramy przez parametr kontrolera, a nie tworzymy go.

Przykład:
public function exampleAction(Request $request)
{
    // tutaj możesz użyć obiektu $request
}

Polecam przeczytać dokumentację: The Request object as a Controller Argument. Bez poznania podstaw w Symfony wiele nie osiągniesz.

$imie = $request->query->get('imie');

W ten sposób pobierasz parametr URL, nie parametr formularza. Dlatego nie możesz go odczytać.

Wydaje ,mi sie że  wartosc 'imie' z tablicy przekazywanej przez funkcje render() to jest ta sama wartość która znajduje sie w poniższym kodzie w metodzie createFormBuilder() .Niesetety ten kod nie dziala prawdlowo , widok nie wyswietla zmiennej przekazanej do niego .  Co robie zle ???

Przede wszystkim źle odbierasz parametry formularza. Nie powinieneś ich pobierać bezpośrednio z obiektu $request, tylko pozwolić formularzowi je zmapować na obiekt lub tablicę. Wtedy będą one przetworzone (np. napis z datą zostanie zamieniony na obiekt klasy DateTime) i walidowane.

W dokumentacji jest to opisane: Handling Form Submissions.

Przeczytaj w końcu dokumentację, bo dużo rzeczy robisz źle.
7
Pomoc / Odp: Przekierowanie do innej strony
« Ostatnia wiadomość wysłana przez Michał Pipa dnia Lipiec 14, 2017, 12:18:35 »
Zrobiłem tak że wywołuje metode w kontrolerze w której jest funckja render(). A moze jest jeszcze jakis inny sposób ?

Symfony ma już gotowy kontroler, który renderuje szablon o nazwie przekazanej jako parametr w routingu: How to Render a Template without a custom Controller. W ten sposób możesz jedynie wyrenderować szablon który nie ma parametrów.
8
Pomoc / W jaki sposob pobrac zmienna z URL
« Ostatnia wiadomość wysłana przez and777 dnia Lipiec 14, 2017, 11:33:50 »
Witam

Próbuje dostać sie do zmiennych wysyłanych z formularza , mam taki kod w funkcji

            $request = Request::createFromGlobals();
       $imie = $request->query->get('imie');

    return $this->render('default/success.html.twig', array('imie'=>$imie));

  Wydaje ,mi sie że  wartosc 'imie' z tablicy przekazywanej przez funkcje render() to jest ta sama wartość która znajduje sie w poniższym kodzie w metodzie createFormBuilder() .Niesetety ten kod nie dziala prawdlowo , widok nie wyswietla zmiennej przekazanej do niego .  Co robie zle ???

      $form = $this->createFormBuilder($task)
            ->add('imie', TextType::class)
       ->add('nazwisko', TextType::class)    
            ->add('dueDate', DateType::class)
            ->add('save', SubmitType::class, array('label' => 'Wyślij'))
            ->getForm();





 
9
Pomoc / Odp: Przekierowanie do innej strony
« Ostatnia wiadomość wysłana przez and777 dnia Lipiec 14, 2017, 10:29:02 »
ok , dzieki , działa MICHAŁ  ;;D . Zrobiłem tak że wywołuje metode w kontrolerze w której jest funckja render(). A moze jest jeszcze jakis inny sposób ?
10
Pomoc / Odp: Przekierowanie do innej strony
« Ostatnia wiadomość wysłana przez Michał Pipa dnia Lipiec 13, 2017, 20:23:06 »
w takim razie czy to jest prawidlowy zapis przekierowania do podstrony success.html.twig ?

return $this->redirect('default/success.html.twig');

Nie. Nie możesz przekierować do szablonu Twig. Możesz przekierowywać jedynie na URL, co w Symfony oznacza stworzenie kontrolera i routingu do niego.

Polecam poczytać dokumentację, bo bez tego ciężko będzie zacząć. Na początek polecam te rozdziały:
Strony: [1] 2 3 ... 10